import tensorflow as tf
from tensorflow import keras
from tensorflow.keras.utils import image_dataset_from_directory
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
# import seaborn as sns
# import tensorflow.keras.utils import load_img
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense,Dropout,Flatten,Conv2D,MaxPooling2D,BatchNormalization,LeakyReLU,GlobalAveragePooling2D
from tensorflow.keras.utils import to_categorical
from tensorflow.keras import regularizers
from tensorflow.keras.layers.experimental.preprocessing import RandomFlip
from tensorflow.keras.wrappers.scikit_learn import KerasClassifier
from sklearn.model_selection import RandomizedSearchCV, KFold
from tensorflow.keras.utils import plot_model
import scipy
import PIL
tf.config.list_physical_devices('GPU')
[PhysicalDevice(name='/physical_device:GPU:0', device_type='GPU')]
train = image_dataset_from_directory(directory='./Dataset for CA1 part A/train',color_mode='grayscale',label_mode='categorical',image_size=(31,31))
test = image_dataset_from_directory(directory='./Dataset for CA1 part A/test',color_mode='grayscale',label_mode='categorical',image_size=(31,31))
validation = image_dataset_from_directory(directory='./Dataset for CA1 part A/validation',color_mode='grayscale',label_mode='categorical',image_size=(31,31))
Found 9028 files belonging to 15 classes. Found 3000 files belonging to 15 classes. Found 3000 files belonging to 15 classes.
X_train = []
y_train = []
for images, labels in train:
X_train.append(images)
y_train.append(labels)
X_train = np.concatenate(X_train, axis=0)
X_train = np.squeeze(X_train, axis=-1)
y_train = np.concatenate(y_train, axis=0)
X_test = []
y_test = []
for images, labels in test:
X_test.append(images)
y_test.append(labels)
X_test = np.concatenate(X_test, axis=0)
X_test = np.squeeze(X_test, axis=-1)
y_test = np.concatenate(y_test, axis=0)
X_val = []
y_val = []
for images, labels in validation:
X_val.append(images)
y_val.append(labels)
X_val = np.concatenate(X_val, axis=0)
X_val = np.squeeze(X_val, axis=-1)
y_val = np.concatenate(y_val, axis=0)
from tensorflow.keras.utils import to_categorical
X_train = np.array(X_train) / 255.0
X_test = np.array(X_test) / 255.0
X_val = np.array(X_val) / 255.0
print("Length of X train: " + str(len(X_train)))
print("Length of X test: " + str(len(X_test)))
print("Length of X validation: " + str(len(X_val)))
print("Length of y train: " + str(len(y_train)))
print("Length of y test: " + str(len(y_test)))
print("Length of y validation: " + str(len(y_val)))
Length of X train: 9028 Length of X test: 3000 Length of X validation: 3000 Length of y train: 9028 Length of y test: 3000 Length of y validation: 3000
import os
from tensorflow.keras.preprocessing import image
# classes = train.class_names
classes = ['Bean','Bitter_Gourd','Bottle_Gourd','Brinjal','Broccoli','Cabbage','Capsicum','Carrot','Cauliflower','Cucumber','Papaya','Potato','Pumpkin','Radish','Tomato']
trainDir = './Dataset for CA1 part A/train'
class_name = os.listdir(trainDir)
figure = plt.figure(figsize= (10,10))
for className in classes:
classDir = os.path.join(trainDir,className)
fileList = os.listdir(classDir)
if len(fileList) > 0:
imagePath = os.path.join(classDir,fileList[0])
img = image.load_img(imagePath,target_size=(31,31))
ax = plt.subplot(5,3,classes.index(className)+1)
plt.title(className)
plt.imshow(img)
plt.axis('off')
plt.show()
import os
from tensorflow.keras.preprocessing import image
# classes = train.class_names
classes = ['Bean','Bitter_Gourd','Bottle_Gourd','Brinjal','Broccoli','Cabbage','Capsicum','Carrot','Cauliflower','Cucumber','Papaya','Potato','Pumpkin','Radish','Tomato']
trainDir = './Dataset for CA1 part A/train'
class_name = os.listdir(trainDir)
figure = plt.figure(figsize= (10,10))
for className in classes:
classDir = os.path.join(trainDir,className)
fileList = os.listdir(classDir)
if len(fileList) > 0:
imagePath = os.path.join(classDir,fileList[0])
img = image.load_img(imagePath,target_size=(31,31),color_mode='grayscale')
ax = plt.subplot(5,3,classes.index(className)+1)
plt.title(className)
plt.imshow(img,cmap='gray')
plt.axis('off')
plt.show()
import os
from tensorflow.keras.preprocessing import image
# classes = train.class_names
classes = ['Bean','Bitter_Gourd','Bottle_Gourd','Brinjal','Broccoli','Cabbage','Capsicum','Carrot','Cauliflower','Cucumber','Papaya','Potato','Pumpkin','Radish','Tomato']
trainDir = './Dataset for CA1 part A/train'
class_name = os.listdir(trainDir)
figure = plt.figure(figsize= (10,10))
for className in classes:
classDir = os.path.join(trainDir,className)
fileList = os.listdir(classDir)
if len(fileList) > 0:
imagePath = os.path.join(classDir,fileList[0])
img = image.load_img(imagePath,target_size=(128,128))
ax = plt.subplot(5,3,classes.index(className)+1)
plt.title(className)
plt.imshow(img)
plt.axis('off')
plt.show()
import os
from tensorflow.keras.preprocessing import image
# classes = train.class_names
classes = ['Bean','Bitter_Gourd','Bottle_Gourd','Brinjal','Broccoli','Cabbage','Capsicum','Carrot','Cauliflower','Cucumber','Papaya','Potato','Pumpkin','Radish','Tomato']
trainDir = './Dataset for CA1 part A/train'
class_name = os.listdir(trainDir)
figure = plt.figure(figsize= (10,10))
for className in classes:
classDir = os.path.join(trainDir,className)
fileList = os.listdir(classDir)
if len(fileList) > 0:
imagePath = os.path.join(classDir,fileList[0])
img = image.load_img(imagePath,target_size=(128,128),color_mode='grayscale')
ax = plt.subplot(5,3,classes.index(className)+1)
plt.title(className)
plt.imshow(img,cmap='gray')
plt.axis('off')
plt.show()
import os
datasetDir = './Dataset for CA1 part A/train'
classNames = os.listdir(datasetDir)
classCounts = {}
for className in classNames:
classDir = os.path.join(datasetDir,className)
classCounts[className] = len(os.listdir(classDir))
plt.figure(figsize=(17,8))
plt.title("Training Data Distribution For Training Data")
plt.xlabel("Class Name")
plt.ylabel("Count of Image")
plt.bar(classCounts.keys(),classCounts.values())
plt.tight_layout()
plt.show()
def plotAUC(model):
fig = plt.figure(figsize = (18,7))
fig.set_facecolor('lightblue')
fig.suptitle('Accuracy and Loss Graph')
ax1 = fig.add_subplot(1,2,1)
ax1.set_title('Model Accuracy')
ax1.set_xlabel('Epoch')
ax1.set_ylabel('Accuracy')
ax1.plot(model.history['accuracy'])
ax1.plot(model.history['val_accuracy'])
ax1.legend(['Train','Validate'])
ax2 = fig.add_subplot(1,2,2)
ax2.set_title('Model Loss')
ax2.set_xlabel('Epoch')
ax2.set_ylabel('Loss')
ax2.plot(model.history['loss'])
ax2.plot(model.history['val_loss'])
ax2.legend(['Train','Validate'])
plt.tight_layout()
plt.show()
model = Sequential()
model.add(Conv2D(64, (3, 3), activation='relu',input_shape=(31,31,1)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Flatten())
model.add(Dense(256, activation='relu'))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
history = model.fit(X_train,y_train, validation_data=(X_val,y_val),epochs=100, batch_size=128)
scores = model.evaluate(X_test,y_test)
print("CNN Error: %.2f%%" % (100-scores[1]*100))
plotAUC(history)
Epoch 1/100 71/71 [==============================] - 1s 12ms/step - loss: 2.3782 - accuracy: 0.2200 - val_loss: 2.2191 - val_accuracy: 0.3117 Epoch 2/100 71/71 [==============================] - 1s 8ms/step - loss: 1.8197 - accuracy: 0.4262 - val_loss: 1.8108 - val_accuracy: 0.4280 Epoch 3/100 71/71 [==============================] - 1s 8ms/step - loss: 1.4820 - accuracy: 0.5348 - val_loss: 1.5703 - val_accuracy: 0.5067 Epoch 4/100 71/71 [==============================] - 1s 8ms/step - loss: 1.2395 - accuracy: 0.6097 - val_loss: 1.2823 - val_accuracy: 0.5880 Epoch 5/100 71/71 [==============================] - 1s 8ms/step - loss: 1.0336 - accuracy: 0.6767 - val_loss: 1.1425 - val_accuracy: 0.6327 Epoch 6/100 71/71 [==============================] - 1s 8ms/step - loss: 0.9093 - accuracy: 0.7182 - val_loss: 1.0185 - val_accuracy: 0.6860 Epoch 7/100 71/71 [==============================] - 1s 8ms/step - loss: 0.7660 - accuracy: 0.7646 - val_loss: 1.0090 - val_accuracy: 0.6880 Epoch 8/100 71/71 [==============================] - 1s 8ms/step - loss: 0.6540 - accuracy: 0.8024 - val_loss: 0.8366 - val_accuracy: 0.7403 Epoch 9/100 71/71 [==============================] - 1s 8ms/step - loss: 0.5721 - accuracy: 0.8314 - val_loss: 0.8367 - val_accuracy: 0.7453 Epoch 10/100 71/71 [==============================] - 1s 8ms/step - loss: 0.4847 - accuracy: 0.8561 - val_loss: 0.7480 - val_accuracy: 0.7663 Epoch 11/100 71/71 [==============================] - 1s 8ms/step - loss: 0.4324 - accuracy: 0.8731 - val_loss: 0.6851 - val_accuracy: 0.7963 Epoch 12/100 71/71 [==============================] - 1s 8ms/step - loss: 0.3665 - accuracy: 0.8954 - val_loss: 0.6805 - val_accuracy: 0.7967 Epoch 13/100 71/71 [==============================] - 1s 8ms/step - loss: 0.3097 - accuracy: 0.9118 - val_loss: 0.6988 - val_accuracy: 0.7983 Epoch 14/100 71/71 [==============================] - 1s 8ms/step - loss: 0.2658 - accuracy: 0.9249 - val_loss: 0.6649 - val_accuracy: 0.8007 Epoch 15/100 71/71 [==============================] - 1s 8ms/step - loss: 0.2277 - accuracy: 0.9376 - val_loss: 0.6646 - val_accuracy: 0.8080 Epoch 16/100 71/71 [==============================] - 1s 8ms/step - loss: 0.1894 - accuracy: 0.9498 - val_loss: 0.7186 - val_accuracy: 0.8013 Epoch 17/100 71/71 [==============================] - 1s 8ms/step - loss: 0.1667 - accuracy: 0.9565 - val_loss: 0.7141 - val_accuracy: 0.8030 Epoch 18/100 71/71 [==============================] - 1s 8ms/step - loss: 0.1356 - accuracy: 0.9672 - val_loss: 0.6524 - val_accuracy: 0.8227 Epoch 19/100 71/71 [==============================] - 1s 8ms/step - loss: 0.1040 - accuracy: 0.9762 - val_loss: 0.6344 - val_accuracy: 0.8350 Epoch 20/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0866 - accuracy: 0.9832 - val_loss: 0.6622 - val_accuracy: 0.8263 Epoch 21/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0722 - accuracy: 0.9880 - val_loss: 0.6057 - val_accuracy: 0.8427 Epoch 22/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0724 - accuracy: 0.9856 - val_loss: 0.6104 - val_accuracy: 0.8430 Epoch 23/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0559 - accuracy: 0.9916 - val_loss: 0.6733 - val_accuracy: 0.8397 Epoch 24/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0560 - accuracy: 0.9908 - val_loss: 0.6283 - val_accuracy: 0.8460 Epoch 25/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0435 - accuracy: 0.9935 - val_loss: 0.6251 - val_accuracy: 0.8483 Epoch 26/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0259 - accuracy: 0.9978 - val_loss: 0.6767 - val_accuracy: 0.8493 Epoch 27/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0211 - accuracy: 0.9993 - val_loss: 0.7009 - val_accuracy: 0.8347 Epoch 28/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0158 - accuracy: 0.9998 - val_loss: 0.7129 - val_accuracy: 0.8430 Epoch 29/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0137 - accuracy: 0.9996 - val_loss: 0.6809 - val_accuracy: 0.8470 Epoch 30/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0114 - accuracy: 0.9994 - val_loss: 0.6705 - val_accuracy: 0.8513 Epoch 31/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0107 - accuracy: 0.9997 - val_loss: 0.7040 - val_accuracy: 0.8497 Epoch 32/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0092 - accuracy: 0.9999 - val_loss: 0.6921 - val_accuracy: 0.8490 Epoch 33/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0077 - accuracy: 0.9999 - val_loss: 0.7100 - val_accuracy: 0.8510 Epoch 34/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0066 - accuracy: 1.0000 - val_loss: 0.7174 - val_accuracy: 0.8547 Epoch 35/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0052 - accuracy: 1.0000 - val_loss: 0.7262 - val_accuracy: 0.8523 Epoch 36/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0049 - accuracy: 1.0000 - val_loss: 0.7457 - val_accuracy: 0.8517 Epoch 37/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0048 - accuracy: 1.0000 - val_loss: 0.7762 - val_accuracy: 0.8470 Epoch 38/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0041 - accuracy: 1.0000 - val_loss: 0.7521 - val_accuracy: 0.8517 Epoch 39/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0040 - accuracy: 1.0000 - val_loss: 0.7589 - val_accuracy: 0.8513 Epoch 40/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0034 - accuracy: 1.0000 - val_loss: 0.7677 - val_accuracy: 0.8530 Epoch 41/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0029 - accuracy: 1.0000 - val_loss: 0.7968 - val_accuracy: 0.8483 Epoch 42/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0027 - accuracy: 1.0000 - val_loss: 0.7760 - val_accuracy: 0.8523 Epoch 43/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0025 - accuracy: 1.0000 - val_loss: 0.7777 - val_accuracy: 0.8537 Epoch 44/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0023 - accuracy: 1.0000 - val_loss: 0.7904 - val_accuracy: 0.8520 Epoch 45/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0020 - accuracy: 1.0000 - val_loss: 0.7866 - val_accuracy: 0.8553 Epoch 46/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0019 - accuracy: 1.0000 - val_loss: 0.7975 - val_accuracy: 0.8553 Epoch 47/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0018 - accuracy: 1.0000 - val_loss: 0.8237 - val_accuracy: 0.8480 Epoch 48/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0017 - accuracy: 1.0000 - val_loss: 0.8120 - val_accuracy: 0.8500 Epoch 49/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0015 - accuracy: 1.0000 - val_loss: 0.8028 - val_accuracy: 0.8540 Epoch 50/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0015 - accuracy: 1.0000 - val_loss: 0.8094 - val_accuracy: 0.8527 Epoch 51/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0013 - accuracy: 1.0000 - val_loss: 0.8207 - val_accuracy: 0.8553 Epoch 52/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0013 - accuracy: 1.0000 - val_loss: 0.8279 - val_accuracy: 0.8553 Epoch 53/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0012 - accuracy: 1.0000 - val_loss: 0.8229 - val_accuracy: 0.8577 Epoch 54/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0011 - accuracy: 1.0000 - val_loss: 0.8493 - val_accuracy: 0.8500 Epoch 55/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0011 - accuracy: 1.0000 - val_loss: 0.8587 - val_accuracy: 0.8507 Epoch 56/100 71/71 [==============================] - 1s 8ms/step - loss: 0.0010 - accuracy: 1.0000 - val_loss: 0.8531 - val_accuracy: 0.8533 Epoch 57/100 71/71 [==============================] - 1s 8ms/step - loss: 9.1940e-04 - accuracy: 1.0000 - val_loss: 0.8487 - val_accuracy: 0.8530 Epoch 58/100 71/71 [==============================] - 1s 8ms/step - loss: 8.6338e-04 - accuracy: 1.0000 - val_loss: 0.8583 - val_accuracy: 0.8517 Epoch 59/100 71/71 [==============================] - 1s 8ms/step - loss: 8.3636e-04 - accuracy: 1.0000 - val_loss: 0.8542 - val_accuracy: 0.8537 Epoch 60/100 71/71 [==============================] - 1s 8ms/step - loss: 7.7451e-04 - accuracy: 1.0000 - val_loss: 0.8696 - val_accuracy: 0.8503 Epoch 61/100 71/71 [==============================] - 1s 8ms/step - loss: 7.2633e-04 - accuracy: 1.0000 - val_loss: 0.8676 - val_accuracy: 0.8497 Epoch 62/100 71/71 [==============================] - 1s 8ms/step - loss: 6.9971e-04 - accuracy: 1.0000 - val_loss: 0.8793 - val_accuracy: 0.8523 Epoch 63/100 71/71 [==============================] - 1s 8ms/step - loss: 6.5307e-04 - accuracy: 1.0000 - val_loss: 0.8798 - val_accuracy: 0.8523 Epoch 64/100 71/71 [==============================] - 1s 8ms/step - loss: 6.0786e-04 - accuracy: 1.0000 - val_loss: 0.8871 - val_accuracy: 0.8510 Epoch 65/100 71/71 [==============================] - 1s 8ms/step - loss: 5.8795e-04 - accuracy: 1.0000 - val_loss: 0.8838 - val_accuracy: 0.8533 Epoch 66/100 71/71 [==============================] - 1s 8ms/step - loss: 5.5587e-04 - accuracy: 1.0000 - val_loss: 0.8733 - val_accuracy: 0.8567 Epoch 67/100 71/71 [==============================] - 1s 8ms/step - loss: 5.1927e-04 - accuracy: 1.0000 - val_loss: 0.8936 - val_accuracy: 0.8553 Epoch 68/100 71/71 [==============================] - 1s 8ms/step - loss: 4.9019e-04 - accuracy: 1.0000 - val_loss: 0.9119 - val_accuracy: 0.8527 Epoch 69/100 71/71 [==============================] - 1s 8ms/step - loss: 4.7503e-04 - accuracy: 1.0000 - val_loss: 0.9144 - val_accuracy: 0.8493 Epoch 70/100 71/71 [==============================] - 1s 8ms/step - loss: 4.4850e-04 - accuracy: 1.0000 - val_loss: 0.9195 - val_accuracy: 0.8510 Epoch 71/100 71/71 [==============================] - 1s 8ms/step - loss: 4.2417e-04 - accuracy: 1.0000 - val_loss: 0.9145 - val_accuracy: 0.8520 Epoch 72/100 71/71 [==============================] - 1s 8ms/step - loss: 4.0154e-04 - accuracy: 1.0000 - val_loss: 0.9320 - val_accuracy: 0.8510 Epoch 73/100 71/71 [==============================] - 1s 8ms/step - loss: 3.8718e-04 - accuracy: 1.0000 - val_loss: 0.9305 - val_accuracy: 0.8510 Epoch 74/100 71/71 [==============================] - 1s 8ms/step - loss: 3.6774e-04 - accuracy: 1.0000 - val_loss: 0.9282 - val_accuracy: 0.8527 Epoch 75/100 71/71 [==============================] - 1s 8ms/step - loss: 3.4381e-04 - accuracy: 1.0000 - val_loss: 0.9234 - val_accuracy: 0.8543 Epoch 76/100 71/71 [==============================] - 1s 8ms/step - loss: 3.2485e-04 - accuracy: 1.0000 - val_loss: 0.9346 - val_accuracy: 0.8547 Epoch 77/100 71/71 [==============================] - 1s 8ms/step - loss: 3.1702e-04 - accuracy: 1.0000 - val_loss: 0.9443 - val_accuracy: 0.8513 Epoch 78/100 71/71 [==============================] - 1s 8ms/step - loss: 2.9470e-04 - accuracy: 1.0000 - val_loss: 0.9567 - val_accuracy: 0.8533 Epoch 79/100 71/71 [==============================] - 1s 8ms/step - loss: 2.7752e-04 - accuracy: 1.0000 - val_loss: 0.9527 - val_accuracy: 0.8547 Epoch 80/100 71/71 [==============================] - 1s 8ms/step - loss: 2.7201e-04 - accuracy: 1.0000 - val_loss: 0.9481 - val_accuracy: 0.8520 Epoch 81/100 71/71 [==============================] - 1s 8ms/step - loss: 2.5035e-04 - accuracy: 1.0000 - val_loss: 0.9586 - val_accuracy: 0.8523 Epoch 82/100 71/71 [==============================] - 1s 8ms/step - loss: 2.3938e-04 - accuracy: 1.0000 - val_loss: 0.9540 - val_accuracy: 0.8537 Epoch 83/100 71/71 [==============================] - 1s 8ms/step - loss: 2.3213e-04 - accuracy: 1.0000 - val_loss: 0.9639 - val_accuracy: 0.8520 Epoch 84/100 71/71 [==============================] - 1s 8ms/step - loss: 2.1071e-04 - accuracy: 1.0000 - val_loss: 0.9713 - val_accuracy: 0.8537 Epoch 85/100 71/71 [==============================] - 1s 8ms/step - loss: 2.0349e-04 - accuracy: 1.0000 - val_loss: 0.9734 - val_accuracy: 0.8560 Epoch 86/100 71/71 [==============================] - 1s 8ms/step - loss: 1.9276e-04 - accuracy: 1.0000 - val_loss: 0.9755 - val_accuracy: 0.8543 Epoch 87/100 71/71 [==============================] - 1s 8ms/step - loss: 1.8004e-04 - accuracy: 1.0000 - val_loss: 0.9733 - val_accuracy: 0.8550 Epoch 88/100 71/71 [==============================] - 1s 8ms/step - loss: 1.7110e-04 - accuracy: 1.0000 - val_loss: 0.9842 - val_accuracy: 0.8520 Epoch 89/100 71/71 [==============================] - 1s 8ms/step - loss: 1.6201e-04 - accuracy: 1.0000 - val_loss: 0.9891 - val_accuracy: 0.8530 Epoch 90/100 71/71 [==============================] - 1s 8ms/step - loss: 1.5571e-04 - accuracy: 1.0000 - val_loss: 0.9932 - val_accuracy: 0.8553 Epoch 91/100 71/71 [==============================] - 1s 8ms/step - loss: 1.4847e-04 - accuracy: 1.0000 - val_loss: 0.9929 - val_accuracy: 0.8540 Epoch 92/100 71/71 [==============================] - 1s 8ms/step - loss: 1.4068e-04 - accuracy: 1.0000 - val_loss: 1.0032 - val_accuracy: 0.8537 Epoch 93/100 71/71 [==============================] - 1s 8ms/step - loss: 1.3143e-04 - accuracy: 1.0000 - val_loss: 1.0035 - val_accuracy: 0.8533 Epoch 94/100 71/71 [==============================] - 1s 8ms/step - loss: 1.2568e-04 - accuracy: 1.0000 - val_loss: 1.0041 - val_accuracy: 0.8527 Epoch 95/100 71/71 [==============================] - 1s 8ms/step - loss: 1.1935e-04 - accuracy: 1.0000 - val_loss: 1.0187 - val_accuracy: 0.8513 Epoch 96/100 71/71 [==============================] - 1s 8ms/step - loss: 1.1529e-04 - accuracy: 1.0000 - val_loss: 1.0161 - val_accuracy: 0.8537 Epoch 97/100 71/71 [==============================] - 1s 8ms/step - loss: 1.0873e-04 - accuracy: 1.0000 - val_loss: 1.0201 - val_accuracy: 0.8553 Epoch 98/100 71/71 [==============================] - 1s 8ms/step - loss: 1.0411e-04 - accuracy: 1.0000 - val_loss: 1.0303 - val_accuracy: 0.8553 Epoch 99/100 71/71 [==============================] - 1s 8ms/step - loss: 9.8915e-05 - accuracy: 1.0000 - val_loss: 1.0308 - val_accuracy: 0.8523 Epoch 100/100 71/71 [==============================] - 1s 8ms/step - loss: 9.4240e-05 - accuracy: 1.0000 - val_loss: 1.0342 - val_accuracy: 0.8537 94/94 [==============================] - 0s 3ms/step - loss: 0.8785 - accuracy: 0.8643 CNN Error: 13.57%
# Model 1
model = Sequential()
model.add(Conv2D(64, (3, 3), activation='relu',input_shape=(31,31,1)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
history = model.fit(X_train,y_train, validation_data=(X_val,y_val),epochs=100, batch_size=128)
model.save_weights("./CNN Weights (31 by 31)/model1.h5")
scores = model.evaluate(X_test,y_test)
print("CNN Error: %.2f%%" % (100-scores[1]*100))
plotAUC(history)
Epoch 1/100 71/71 [==============================] - 2s 11ms/step - loss: 2.5183 - accuracy: 0.1646 - val_loss: 2.4102 - val_accuracy: 0.2410 Epoch 2/100 71/71 [==============================] - 1s 9ms/step - loss: 2.1042 - accuracy: 0.3281 - val_loss: 1.9684 - val_accuracy: 0.3987 Epoch 3/100 71/71 [==============================] - 1s 9ms/step - loss: 1.8322 - accuracy: 0.4197 - val_loss: 1.7108 - val_accuracy: 0.4813 Epoch 4/100 71/71 [==============================] - 1s 9ms/step - loss: 1.6353 - accuracy: 0.4744 - val_loss: 1.5148 - val_accuracy: 0.5273 Epoch 5/100 71/71 [==============================] - 1s 9ms/step - loss: 1.4793 - accuracy: 0.5247 - val_loss: 1.4051 - val_accuracy: 0.5453 Epoch 6/100 71/71 [==============================] - 1s 9ms/step - loss: 1.3552 - accuracy: 0.5630 - val_loss: 1.2709 - val_accuracy: 0.5930 Epoch 7/100 71/71 [==============================] - 1s 9ms/step - loss: 1.2569 - accuracy: 0.5949 - val_loss: 1.1353 - val_accuracy: 0.6463 Epoch 8/100 71/71 [==============================] - 1s 9ms/step - loss: 1.1556 - accuracy: 0.6265 - val_loss: 1.0198 - val_accuracy: 0.6857 Epoch 9/100 71/71 [==============================] - 1s 9ms/step - loss: 1.0851 - accuracy: 0.6499 - val_loss: 0.9906 - val_accuracy: 0.6957 Epoch 10/100 71/71 [==============================] - 1s 9ms/step - loss: 1.0138 - accuracy: 0.6655 - val_loss: 0.8936 - val_accuracy: 0.7273 Epoch 11/100 71/71 [==============================] - 1s 9ms/step - loss: 0.9370 - accuracy: 0.6932 - val_loss: 0.8625 - val_accuracy: 0.7323 Epoch 12/100 71/71 [==============================] - 1s 9ms/step - loss: 0.8762 - accuracy: 0.7139 - val_loss: 0.7825 - val_accuracy: 0.7597 Epoch 13/100 71/71 [==============================] - 1s 8ms/step - loss: 0.8370 - accuracy: 0.7294 - val_loss: 0.7334 - val_accuracy: 0.7773 Epoch 14/100 71/71 [==============================] - 1s 9ms/step - loss: 0.7849 - accuracy: 0.7458 - val_loss: 0.7321 - val_accuracy: 0.7770 Epoch 15/100 71/71 [==============================] - 1s 9ms/step - loss: 0.7696 - accuracy: 0.7478 - val_loss: 0.6908 - val_accuracy: 0.8023 Epoch 16/100 71/71 [==============================] - 1s 9ms/step - loss: 0.7191 - accuracy: 0.7611 - val_loss: 0.7038 - val_accuracy: 0.7890 Epoch 17/100 71/71 [==============================] - 1s 8ms/step - loss: 0.6910 - accuracy: 0.7738 - val_loss: 0.7655 - val_accuracy: 0.7653 Epoch 18/100 71/71 [==============================] - 1s 8ms/step - loss: 0.6707 - accuracy: 0.7817 - val_loss: 0.6434 - val_accuracy: 0.8070 Epoch 19/100 71/71 [==============================] - 1s 8ms/step - loss: 0.6244 - accuracy: 0.7893 - val_loss: 0.5893 - val_accuracy: 0.8237 Epoch 20/100 71/71 [==============================] - 1s 9ms/step - loss: 0.6082 - accuracy: 0.8003 - val_loss: 0.5710 - val_accuracy: 0.8320 Epoch 21/100 71/71 [==============================] - 1s 9ms/step - loss: 0.5712 - accuracy: 0.8170 - val_loss: 0.5698 - val_accuracy: 0.8287 Epoch 22/100 71/71 [==============================] - 1s 9ms/step - loss: 0.5369 - accuracy: 0.8233 - val_loss: 0.5446 - val_accuracy: 0.8363 Epoch 23/100 71/71 [==============================] - 1s 8ms/step - loss: 0.5140 - accuracy: 0.8340 - val_loss: 0.5467 - val_accuracy: 0.8317 Epoch 24/100 71/71 [==============================] - 1s 8ms/step - loss: 0.4995 - accuracy: 0.8316 - val_loss: 0.5487 - val_accuracy: 0.8340 Epoch 25/100 71/71 [==============================] - 1s 8ms/step - loss: 0.4893 - accuracy: 0.8371 - val_loss: 0.5042 - val_accuracy: 0.8493 Epoch 26/100 71/71 [==============================] - 1s 8ms/step - loss: 0.4843 - accuracy: 0.8396 - val_loss: 0.4849 - val_accuracy: 0.8610 Epoch 27/100 71/71 [==============================] - 1s 8ms/step - loss: 0.4347 - accuracy: 0.8554 - val_loss: 0.4843 - val_accuracy: 0.8560 Epoch 28/100 71/71 [==============================] - 1s 8ms/step - loss: 0.4460 - accuracy: 0.8548 - val_loss: 0.4866 - val_accuracy: 0.8603 Epoch 29/100 71/71 [==============================] - 1s 8ms/step - loss: 0.4137 - accuracy: 0.8638 - val_loss: 0.4648 - val_accuracy: 0.8600 Epoch 30/100 71/71 [==============================] - 1s 8ms/step - loss: 0.3998 - accuracy: 0.8655 - val_loss: 0.4529 - val_accuracy: 0.8637 Epoch 31/100 71/71 [==============================] - 1s 9ms/step - loss: 0.3828 - accuracy: 0.8715 - val_loss: 0.4597 - val_accuracy: 0.8647 Epoch 32/100 71/71 [==============================] - 1s 9ms/step - loss: 0.3891 - accuracy: 0.8682 - val_loss: 0.4828 - val_accuracy: 0.8587 Epoch 33/100 71/71 [==============================] - 1s 9ms/step - loss: 0.3633 - accuracy: 0.8770 - val_loss: 0.4580 - val_accuracy: 0.8650 Epoch 34/100 71/71 [==============================] - 1s 9ms/step - loss: 0.3573 - accuracy: 0.8793 - val_loss: 0.4489 - val_accuracy: 0.8713 Epoch 35/100 71/71 [==============================] - 1s 9ms/step - loss: 0.3559 - accuracy: 0.8831 - val_loss: 0.4399 - val_accuracy: 0.8690 Epoch 36/100 71/71 [==============================] - 1s 9ms/step - loss: 0.3418 - accuracy: 0.8830 - val_loss: 0.4373 - val_accuracy: 0.8710 Epoch 37/100 71/71 [==============================] - 1s 9ms/step - loss: 0.3167 - accuracy: 0.8971 - val_loss: 0.4838 - val_accuracy: 0.8663 Epoch 38/100 71/71 [==============================] - 1s 8ms/step - loss: 0.3278 - accuracy: 0.8868 - val_loss: 0.4404 - val_accuracy: 0.8770 Epoch 39/100 71/71 [==============================] - 1s 9ms/step - loss: 0.3261 - accuracy: 0.8874 - val_loss: 0.4494 - val_accuracy: 0.8673 Epoch 40/100 71/71 [==============================] - 1s 9ms/step - loss: 0.3046 - accuracy: 0.8984 - val_loss: 0.4448 - val_accuracy: 0.8763 Epoch 41/100 71/71 [==============================] - 1s 9ms/step - loss: 0.2883 - accuracy: 0.9022 - val_loss: 0.4384 - val_accuracy: 0.8713 Epoch 42/100 71/71 [==============================] - 1s 9ms/step - loss: 0.2924 - accuracy: 0.9012 - val_loss: 0.4646 - val_accuracy: 0.8717 Epoch 43/100 71/71 [==============================] - 1s 9ms/step - loss: 0.2824 - accuracy: 0.9030 - val_loss: 0.4213 - val_accuracy: 0.8807 Epoch 44/100 71/71 [==============================] - 1s 8ms/step - loss: 0.2628 - accuracy: 0.9086 - val_loss: 0.4068 - val_accuracy: 0.8877 Epoch 45/100 71/71 [==============================] - 1s 9ms/step - loss: 0.2733 - accuracy: 0.9088 - val_loss: 0.4440 - val_accuracy: 0.8773 Epoch 46/100 71/71 [==============================] - 1s 8ms/step - loss: 0.2472 - accuracy: 0.9170 - val_loss: 0.4170 - val_accuracy: 0.8860 Epoch 47/100 71/71 [==============================] - 1s 9ms/step - loss: 0.2372 - accuracy: 0.9164 - val_loss: 0.4207 - val_accuracy: 0.8820 Epoch 48/100 71/71 [==============================] - 1s 9ms/step - loss: 0.2330 - accuracy: 0.9195 - val_loss: 0.4373 - val_accuracy: 0.8833 Epoch 49/100 71/71 [==============================] - 1s 8ms/step - loss: 0.2528 - accuracy: 0.9165 - val_loss: 0.4254 - val_accuracy: 0.8810 Epoch 50/100 71/71 [==============================] - 1s 8ms/step - loss: 0.2419 - accuracy: 0.9168 - val_loss: 0.4736 - val_accuracy: 0.8763 Epoch 51/100 71/71 [==============================] - 1s 9ms/step - loss: 0.2409 - accuracy: 0.9158 - val_loss: 0.4357 - val_accuracy: 0.8747 Epoch 52/100 71/71 [==============================] - 1s 9ms/step - loss: 0.2237 - accuracy: 0.9224 - val_loss: 0.3998 - val_accuracy: 0.8933 Epoch 53/100 71/71 [==============================] - 1s 9ms/step - loss: 0.2091 - accuracy: 0.9310 - val_loss: 0.4212 - val_accuracy: 0.8933 Epoch 54/100 71/71 [==============================] - 1s 9ms/step - loss: 0.2113 - accuracy: 0.9270 - val_loss: 0.4439 - val_accuracy: 0.8847 Epoch 55/100 71/71 [==============================] - 1s 8ms/step - loss: 0.1953 - accuracy: 0.9308 - val_loss: 0.4040 - val_accuracy: 0.8963 Epoch 56/100 71/71 [==============================] - 1s 9ms/step - loss: 0.2008 - accuracy: 0.9324 - val_loss: 0.4466 - val_accuracy: 0.8867 Epoch 57/100 71/71 [==============================] - 1s 9ms/step - loss: 0.2075 - accuracy: 0.9309 - val_loss: 0.4378 - val_accuracy: 0.8893 Epoch 58/100 71/71 [==============================] - 1s 8ms/step - loss: 0.2210 - accuracy: 0.9230 - val_loss: 0.5012 - val_accuracy: 0.8763 Epoch 59/100 71/71 [==============================] - 1s 9ms/step - loss: 0.2011 - accuracy: 0.9291 - val_loss: 0.4273 - val_accuracy: 0.8890 Epoch 60/100 71/71 [==============================] - 1s 8ms/step - loss: 0.1947 - accuracy: 0.9351 - val_loss: 0.4408 - val_accuracy: 0.8817 Epoch 61/100 71/71 [==============================] - 1s 9ms/step - loss: 0.1850 - accuracy: 0.9385 - val_loss: 0.4074 - val_accuracy: 0.8943 Epoch 62/100 71/71 [==============================] - 1s 8ms/step - loss: 0.1798 - accuracy: 0.9386 - val_loss: 0.4567 - val_accuracy: 0.8883 Epoch 63/100 71/71 [==============================] - 1s 9ms/step - loss: 0.1878 - accuracy: 0.9332 - val_loss: 0.4469 - val_accuracy: 0.8867 Epoch 64/100 71/71 [==============================] - 1s 9ms/step - loss: 0.1786 - accuracy: 0.9403 - val_loss: 0.4255 - val_accuracy: 0.8897 Epoch 65/100 71/71 [==============================] - 1s 9ms/step - loss: 0.1768 - accuracy: 0.9397 - val_loss: 0.4788 - val_accuracy: 0.8753 Epoch 66/100 71/71 [==============================] - 1s 9ms/step - loss: 0.1771 - accuracy: 0.9364 - val_loss: 0.4066 - val_accuracy: 0.8913 Epoch 67/100 71/71 [==============================] - 1s 8ms/step - loss: 0.1660 - accuracy: 0.9430 - val_loss: 0.4304 - val_accuracy: 0.8900 Epoch 68/100 71/71 [==============================] - 1s 8ms/step - loss: 0.1593 - accuracy: 0.9446 - val_loss: 0.4330 - val_accuracy: 0.8917 Epoch 69/100 71/71 [==============================] - 1s 8ms/step - loss: 0.1611 - accuracy: 0.9434 - val_loss: 0.4360 - val_accuracy: 0.8983 Epoch 70/100 71/71 [==============================] - 1s 8ms/step - loss: 0.1526 - accuracy: 0.9478 - val_loss: 0.4630 - val_accuracy: 0.8857 Epoch 71/100 71/71 [==============================] - 1s 8ms/step - loss: 0.1469 - accuracy: 0.9485 - val_loss: 0.4448 - val_accuracy: 0.8890 Epoch 72/100 71/71 [==============================] - 1s 8ms/step - loss: 0.1688 - accuracy: 0.9406 - val_loss: 0.4660 - val_accuracy: 0.8873 Epoch 73/100 71/71 [==============================] - 1s 8ms/step - loss: 0.1494 - accuracy: 0.9503 - val_loss: 0.4001 - val_accuracy: 0.8987 Epoch 74/100 71/71 [==============================] - 1s 9ms/step - loss: 0.1495 - accuracy: 0.9472 - val_loss: 0.4512 - val_accuracy: 0.8897 Epoch 75/100 71/71 [==============================] - 1s 8ms/step - loss: 0.1550 - accuracy: 0.9446 - val_loss: 0.4406 - val_accuracy: 0.8937 Epoch 76/100 71/71 [==============================] - 1s 9ms/step - loss: 0.1525 - accuracy: 0.9458 - val_loss: 0.4266 - val_accuracy: 0.8957 Epoch 77/100 71/71 [==============================] - 1s 9ms/step - loss: 0.1402 - accuracy: 0.9512 - val_loss: 0.4194 - val_accuracy: 0.8967 Epoch 78/100 71/71 [==============================] - 1s 9ms/step - loss: 0.1398 - accuracy: 0.9519 - val_loss: 0.4282 - val_accuracy: 0.8987 Epoch 79/100 71/71 [==============================] - 1s 9ms/step - loss: 0.1273 - accuracy: 0.9589 - val_loss: 0.4260 - val_accuracy: 0.8973 Epoch 80/100 71/71 [==============================] - 1s 9ms/step - loss: 0.1300 - accuracy: 0.9538 - val_loss: 0.4129 - val_accuracy: 0.9020 Epoch 81/100 71/71 [==============================] - 1s 9ms/step - loss: 0.1324 - accuracy: 0.9540 - val_loss: 0.4581 - val_accuracy: 0.8943 Epoch 82/100 71/71 [==============================] - 1s 8ms/step - loss: 0.1641 - accuracy: 0.9445 - val_loss: 0.4766 - val_accuracy: 0.8930 Epoch 83/100 71/71 [==============================] - 1s 9ms/step - loss: 0.1381 - accuracy: 0.9528 - val_loss: 0.4939 - val_accuracy: 0.8877 Epoch 84/100 71/71 [==============================] - 1s 8ms/step - loss: 0.1419 - accuracy: 0.9496 - val_loss: 0.4499 - val_accuracy: 0.8953 Epoch 85/100 71/71 [==============================] - 1s 9ms/step - loss: 0.1292 - accuracy: 0.9539 - val_loss: 0.4908 - val_accuracy: 0.8847 Epoch 86/100 71/71 [==============================] - 1s 8ms/step - loss: 0.1155 - accuracy: 0.9578 - val_loss: 0.4509 - val_accuracy: 0.8967 Epoch 87/100 71/71 [==============================] - 1s 9ms/step - loss: 0.1235 - accuracy: 0.9576 - val_loss: 0.4473 - val_accuracy: 0.9020 Epoch 88/100 71/71 [==============================] - 1s 9ms/step - loss: 0.1158 - accuracy: 0.9579 - val_loss: 0.4749 - val_accuracy: 0.8873 Epoch 89/100 71/71 [==============================] - 1s 8ms/step - loss: 0.1218 - accuracy: 0.9589 - val_loss: 0.4320 - val_accuracy: 0.9007 Epoch 90/100 71/71 [==============================] - 1s 8ms/step - loss: 0.1314 - accuracy: 0.9530 - val_loss: 0.4929 - val_accuracy: 0.8950 Epoch 91/100 71/71 [==============================] - 1s 8ms/step - loss: 0.1159 - accuracy: 0.9597 - val_loss: 0.4555 - val_accuracy: 0.8957 Epoch 92/100 71/71 [==============================] - 1s 8ms/step - loss: 0.1211 - accuracy: 0.9582 - val_loss: 0.4702 - val_accuracy: 0.8963 Epoch 93/100 71/71 [==============================] - 1s 9ms/step - loss: 0.1178 - accuracy: 0.9601 - val_loss: 0.4465 - val_accuracy: 0.9017 Epoch 94/100 71/71 [==============================] - 1s 9ms/step - loss: 0.1102 - accuracy: 0.9612 - val_loss: 0.4779 - val_accuracy: 0.8933 Epoch 95/100 71/71 [==============================] - 1s 9ms/step - loss: 0.1160 - accuracy: 0.9568 - val_loss: 0.4869 - val_accuracy: 0.8977 Epoch 96/100 71/71 [==============================] - 1s 9ms/step - loss: 0.1363 - accuracy: 0.9507 - val_loss: 0.4696 - val_accuracy: 0.8933 Epoch 97/100 71/71 [==============================] - 1s 8ms/step - loss: 0.1030 - accuracy: 0.9660 - val_loss: 0.4952 - val_accuracy: 0.8963 Epoch 98/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0995 - accuracy: 0.9661 - val_loss: 0.4674 - val_accuracy: 0.8923 Epoch 99/100 71/71 [==============================] - 1s 9ms/step - loss: 0.1070 - accuracy: 0.9649 - val_loss: 0.4615 - val_accuracy: 0.8947 Epoch 100/100 71/71 [==============================] - 1s 9ms/step - loss: 0.1038 - accuracy: 0.9651 - val_loss: 0.4863 - val_accuracy: 0.8970 94/94 [==============================] - 0s 3ms/step - loss: 0.4075 - accuracy: 0.9060 CNN Error: 9.40%
model.summary()
Model: "sequential_23"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
conv2d_64 (Conv2D) (None, 29, 29, 64) 640
max_pooling2d_58 (MaxPoolin (None, 14, 14, 64) 0
g2D)
dropout_57 (Dropout) (None, 14, 14, 64) 0
conv2d_65 (Conv2D) (None, 12, 12, 128) 73856
max_pooling2d_59 (MaxPoolin (None, 6, 6, 128) 0
g2D)
dropout_58 (Dropout) (None, 6, 6, 128) 0
flatten_19 (Flatten) (None, 4608) 0
dense_55 (Dense) (None, 256) 1179904
dropout_59 (Dropout) (None, 256) 0
dense_56 (Dense) (None, 15) 3855
=================================================================
Total params: 1,258,255
Trainable params: 1,258,255
Non-trainable params: 0
_________________________________________________________________
model = Sequential()
model.add(Conv2D(64, (3, 3), activation='relu',input_shape=(31,31,1)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
model.load_weights("./CNN Weights (31 by 31)/model1.h5")
# Model 2
model = Sequential()
model.add(Conv2D(64, (3, 3), activation='relu',input_shape=(31,31,1)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Conv2D(256, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Flatten())
model.add(Dense(512, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
history = model.fit(X_train,y_train, validation_data=(X_val,y_val),epochs=100, batch_size=128)
scores = model.evaluate(X_test,y_test)
print("CNN Error: %.2f%%" % (100-scores[1]*100))
plotAUC(history)
Epoch 1/100 71/71 [==============================] - 2s 15ms/step - loss: 2.5758 - accuracy: 0.1089 - val_loss: 2.6219 - val_accuracy: 0.0910 Epoch 2/100 71/71 [==============================] - 1s 10ms/step - loss: 2.3904 - accuracy: 0.1712 - val_loss: 2.4330 - val_accuracy: 0.1590 Epoch 3/100 71/71 [==============================] - 1s 10ms/step - loss: 2.1387 - accuracy: 0.2761 - val_loss: 2.0296 - val_accuracy: 0.3433 Epoch 4/100 71/71 [==============================] - 1s 10ms/step - loss: 1.8318 - accuracy: 0.4008 - val_loss: 1.7370 - val_accuracy: 0.4137 Epoch 5/100 71/71 [==============================] - 1s 9ms/step - loss: 1.5841 - accuracy: 0.4747 - val_loss: 1.5627 - val_accuracy: 0.4763 Epoch 6/100 71/71 [==============================] - 1s 9ms/step - loss: 1.3590 - accuracy: 0.5516 - val_loss: 1.3638 - val_accuracy: 0.5450 Epoch 7/100 71/71 [==============================] - 1s 9ms/step - loss: 1.2277 - accuracy: 0.5964 - val_loss: 1.1480 - val_accuracy: 0.6197 Epoch 8/100 71/71 [==============================] - 1s 9ms/step - loss: 1.0346 - accuracy: 0.6614 - val_loss: 1.0649 - val_accuracy: 0.6563 Epoch 9/100 71/71 [==============================] - 1s 9ms/step - loss: 0.9259 - accuracy: 0.6962 - val_loss: 0.9080 - val_accuracy: 0.7030 Epoch 10/100 71/71 [==============================] - 1s 10ms/step - loss: 0.8279 - accuracy: 0.7278 - val_loss: 0.8677 - val_accuracy: 0.7153 Epoch 11/100 71/71 [==============================] - 1s 9ms/step - loss: 0.7395 - accuracy: 0.7601 - val_loss: 0.7387 - val_accuracy: 0.7577 Epoch 12/100 71/71 [==============================] - 1s 9ms/step - loss: 0.6633 - accuracy: 0.7897 - val_loss: 0.7660 - val_accuracy: 0.7430 Epoch 13/100 71/71 [==============================] - 1s 10ms/step - loss: 0.6075 - accuracy: 0.8090 - val_loss: 0.6957 - val_accuracy: 0.7763 Epoch 14/100 71/71 [==============================] - 1s 9ms/step - loss: 0.5731 - accuracy: 0.8209 - val_loss: 1.2147 - val_accuracy: 0.6143 Epoch 15/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5230 - accuracy: 0.8340 - val_loss: 0.5323 - val_accuracy: 0.8347 Epoch 16/100 71/71 [==============================] - 1s 10ms/step - loss: 0.4053 - accuracy: 0.8689 - val_loss: 0.5128 - val_accuracy: 0.8420 Epoch 17/100 71/71 [==============================] - 1s 9ms/step - loss: 0.3444 - accuracy: 0.8918 - val_loss: 0.5252 - val_accuracy: 0.8333 Epoch 18/100 71/71 [==============================] - 1s 10ms/step - loss: 0.3430 - accuracy: 0.8881 - val_loss: 0.4993 - val_accuracy: 0.8417 Epoch 19/100 71/71 [==============================] - 1s 9ms/step - loss: 0.3096 - accuracy: 0.8988 - val_loss: 0.4428 - val_accuracy: 0.8610 Epoch 20/100 71/71 [==============================] - 1s 9ms/step - loss: 0.2645 - accuracy: 0.9134 - val_loss: 0.4391 - val_accuracy: 0.8683 Epoch 21/100 71/71 [==============================] - 1s 9ms/step - loss: 0.2558 - accuracy: 0.9173 - val_loss: 0.4313 - val_accuracy: 0.8690 Epoch 22/100 71/71 [==============================] - 1s 9ms/step - loss: 0.2157 - accuracy: 0.9303 - val_loss: 0.4174 - val_accuracy: 0.8793 Epoch 23/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1913 - accuracy: 0.9363 - val_loss: 0.5705 - val_accuracy: 0.8357 Epoch 24/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1857 - accuracy: 0.9402 - val_loss: 0.4932 - val_accuracy: 0.8610 Epoch 25/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1726 - accuracy: 0.9464 - val_loss: 0.4206 - val_accuracy: 0.8783 Epoch 26/100 71/71 [==============================] - 1s 9ms/step - loss: 0.1661 - accuracy: 0.9454 - val_loss: 0.4650 - val_accuracy: 0.8677 Epoch 27/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1693 - accuracy: 0.9457 - val_loss: 0.3908 - val_accuracy: 0.8873 Epoch 28/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1276 - accuracy: 0.9596 - val_loss: 0.4274 - val_accuracy: 0.8800 Epoch 29/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1224 - accuracy: 0.9611 - val_loss: 0.4225 - val_accuracy: 0.8910 Epoch 30/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1035 - accuracy: 0.9670 - val_loss: 0.4274 - val_accuracy: 0.8860 Epoch 31/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1323 - accuracy: 0.9564 - val_loss: 0.4424 - val_accuracy: 0.8790 Epoch 32/100 71/71 [==============================] - 1s 9ms/step - loss: 0.1171 - accuracy: 0.9640 - val_loss: 0.5101 - val_accuracy: 0.8727 Epoch 33/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1013 - accuracy: 0.9667 - val_loss: 0.3972 - val_accuracy: 0.8960 Epoch 34/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0780 - accuracy: 0.9742 - val_loss: 0.4896 - val_accuracy: 0.8820 Epoch 35/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0869 - accuracy: 0.9728 - val_loss: 0.4781 - val_accuracy: 0.8840 Epoch 36/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0761 - accuracy: 0.9749 - val_loss: 0.4758 - val_accuracy: 0.8950 Epoch 37/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0937 - accuracy: 0.9696 - val_loss: 0.6914 - val_accuracy: 0.8410 Epoch 38/100 71/71 [==============================] - 1s 9ms/step - loss: 0.1153 - accuracy: 0.9630 - val_loss: 0.4084 - val_accuracy: 0.9010 Epoch 39/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0633 - accuracy: 0.9807 - val_loss: 0.4450 - val_accuracy: 0.8990 Epoch 40/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0601 - accuracy: 0.9811 - val_loss: 0.4556 - val_accuracy: 0.8970 Epoch 41/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0626 - accuracy: 0.9803 - val_loss: 0.4528 - val_accuracy: 0.9027 Epoch 42/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0607 - accuracy: 0.9802 - val_loss: 0.4516 - val_accuracy: 0.9020 Epoch 43/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0721 - accuracy: 0.9770 - val_loss: 0.4597 - val_accuracy: 0.9023 Epoch 44/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0464 - accuracy: 0.9865 - val_loss: 0.4010 - val_accuracy: 0.9107 Epoch 45/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0497 - accuracy: 0.9847 - val_loss: 0.4209 - val_accuracy: 0.9080 Epoch 46/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0663 - accuracy: 0.9790 - val_loss: 0.5177 - val_accuracy: 0.8833 Epoch 47/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0630 - accuracy: 0.9805 - val_loss: 0.4403 - val_accuracy: 0.9010 Epoch 48/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0569 - accuracy: 0.9822 - val_loss: 0.5334 - val_accuracy: 0.8837 Epoch 49/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0756 - accuracy: 0.9765 - val_loss: 0.5000 - val_accuracy: 0.8927 Epoch 50/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0456 - accuracy: 0.9868 - val_loss: 0.4452 - val_accuracy: 0.9013 Epoch 51/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0501 - accuracy: 0.9846 - val_loss: 0.4059 - val_accuracy: 0.9100 Epoch 52/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0726 - accuracy: 0.9772 - val_loss: 0.5108 - val_accuracy: 0.8820 Epoch 53/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0754 - accuracy: 0.9763 - val_loss: 0.5328 - val_accuracy: 0.8830 Epoch 54/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0504 - accuracy: 0.9843 - val_loss: 0.4688 - val_accuracy: 0.9053 Epoch 55/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0473 - accuracy: 0.9849 - val_loss: 0.4774 - val_accuracy: 0.9020 Epoch 56/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0442 - accuracy: 0.9855 - val_loss: 0.4940 - val_accuracy: 0.8927 Epoch 57/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0671 - accuracy: 0.9781 - val_loss: 0.6304 - val_accuracy: 0.8810 Epoch 58/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0563 - accuracy: 0.9824 - val_loss: 0.4394 - val_accuracy: 0.9070 Epoch 59/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0327 - accuracy: 0.9887 - val_loss: 0.4808 - val_accuracy: 0.9013 Epoch 60/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0366 - accuracy: 0.9870 - val_loss: 0.4704 - val_accuracy: 0.9057 Epoch 61/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0338 - accuracy: 0.9900 - val_loss: 0.6087 - val_accuracy: 0.8727 Epoch 62/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0713 - accuracy: 0.9776 - val_loss: 0.5030 - val_accuracy: 0.8910 Epoch 63/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0425 - accuracy: 0.9869 - val_loss: 0.5145 - val_accuracy: 0.9000 Epoch 64/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0437 - accuracy: 0.9872 - val_loss: 0.4725 - val_accuracy: 0.9037 Epoch 65/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0324 - accuracy: 0.9901 - val_loss: 0.4673 - val_accuracy: 0.9077 Epoch 66/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0276 - accuracy: 0.9907 - val_loss: 0.4664 - val_accuracy: 0.9070 Epoch 67/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0302 - accuracy: 0.9888 - val_loss: 0.6909 - val_accuracy: 0.8710 Epoch 68/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0322 - accuracy: 0.9896 - val_loss: 0.4533 - val_accuracy: 0.9073 Epoch 69/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0327 - accuracy: 0.9901 - val_loss: 0.4982 - val_accuracy: 0.9030 Epoch 70/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0391 - accuracy: 0.9880 - val_loss: 0.4519 - val_accuracy: 0.9053 Epoch 71/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0405 - accuracy: 0.9870 - val_loss: 0.5204 - val_accuracy: 0.8927 Epoch 72/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0285 - accuracy: 0.9920 - val_loss: 0.4667 - val_accuracy: 0.9127 Epoch 73/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0233 - accuracy: 0.9932 - val_loss: 0.6645 - val_accuracy: 0.8773 Epoch 74/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0484 - accuracy: 0.9844 - val_loss: 0.6972 - val_accuracy: 0.8723 Epoch 75/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0620 - accuracy: 0.9795 - val_loss: 0.4917 - val_accuracy: 0.9037 Epoch 76/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0423 - accuracy: 0.9869 - val_loss: 0.4771 - val_accuracy: 0.9100 Epoch 77/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0285 - accuracy: 0.9905 - val_loss: 0.5439 - val_accuracy: 0.8950 Epoch 78/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0575 - accuracy: 0.9823 - val_loss: 0.5170 - val_accuracy: 0.9020 Epoch 79/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0402 - accuracy: 0.9876 - val_loss: 0.4899 - val_accuracy: 0.8977 Epoch 80/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0439 - accuracy: 0.9854 - val_loss: 0.5185 - val_accuracy: 0.9017 Epoch 81/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0451 - accuracy: 0.9866 - val_loss: 0.4847 - val_accuracy: 0.9057 Epoch 82/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0185 - accuracy: 0.9944 - val_loss: 0.5461 - val_accuracy: 0.9030 Epoch 83/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0291 - accuracy: 0.9915 - val_loss: 0.5108 - val_accuracy: 0.9027 Epoch 84/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0328 - accuracy: 0.9887 - val_loss: 0.6029 - val_accuracy: 0.8947 Epoch 85/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0294 - accuracy: 0.9911 - val_loss: 0.7306 - val_accuracy: 0.8840 Epoch 86/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0476 - accuracy: 0.9849 - val_loss: 0.5686 - val_accuracy: 0.8903 Epoch 87/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0688 - accuracy: 0.9780 - val_loss: 0.5560 - val_accuracy: 0.8933 Epoch 88/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0466 - accuracy: 0.9859 - val_loss: 0.5159 - val_accuracy: 0.9013 Epoch 89/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0220 - accuracy: 0.9927 - val_loss: 0.5450 - val_accuracy: 0.8997 Epoch 90/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0305 - accuracy: 0.9905 - val_loss: 0.5277 - val_accuracy: 0.9050 Epoch 91/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0371 - accuracy: 0.9899 - val_loss: 0.4972 - val_accuracy: 0.9080 Epoch 92/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0306 - accuracy: 0.9897 - val_loss: 0.5118 - val_accuracy: 0.9077 Epoch 93/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0338 - accuracy: 0.9891 - val_loss: 0.5529 - val_accuracy: 0.8983 Epoch 94/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0382 - accuracy: 0.9887 - val_loss: 0.5242 - val_accuracy: 0.9057 Epoch 95/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0261 - accuracy: 0.9918 - val_loss: 0.6154 - val_accuracy: 0.8917 Epoch 96/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0230 - accuracy: 0.9919 - val_loss: 0.6109 - val_accuracy: 0.8990 Epoch 97/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0278 - accuracy: 0.9930 - val_loss: 0.5900 - val_accuracy: 0.8973 Epoch 98/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0365 - accuracy: 0.9897 - val_loss: 0.5166 - val_accuracy: 0.9053 Epoch 99/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0267 - accuracy: 0.9919 - val_loss: 0.6032 - val_accuracy: 0.8963 Epoch 100/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0259 - accuracy: 0.9924 - val_loss: 0.4976 - val_accuracy: 0.9043 94/94 [==============================] - 0s 4ms/step - loss: 0.4996 - accuracy: 0.9093 CNN Error: 9.07%
model = Sequential()
model.add(Conv2D(64, (3, 3), activation='relu',input_shape=(31,31,1)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Conv2D(256, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(GlobalAveragePooling2D())
model.add(Dense(512, activation='relu'))
model.add(Dropout(0.3))
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.3))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
history = model.fit(X_train,y_train, validation_data=(X_val,y_val),epochs=100, batch_size=128)
scores = model.evaluate(X_test,y_test)
print("CNN Error: %.2f%%" % (100-scores[1]*100))
plotAUC(history)
Epoch 1/100 71/71 [==============================] - 2s 13ms/step - loss: 2.5727 - accuracy: 0.1133 - val_loss: 2.5601 - val_accuracy: 0.0987 Epoch 2/100 71/71 [==============================] - 1s 10ms/step - loss: 2.3683 - accuracy: 0.1739 - val_loss: 2.5317 - val_accuracy: 0.1503 Epoch 3/100 71/71 [==============================] - 1s 10ms/step - loss: 2.2249 - accuracy: 0.2386 - val_loss: 2.1942 - val_accuracy: 0.2673 Epoch 4/100 71/71 [==============================] - 1s 10ms/step - loss: 2.0057 - accuracy: 0.3255 - val_loss: 2.0317 - val_accuracy: 0.2873 Epoch 5/100 71/71 [==============================] - 1s 10ms/step - loss: 1.8126 - accuracy: 0.3959 - val_loss: 1.9239 - val_accuracy: 0.3480 Epoch 6/100 71/71 [==============================] - 1s 10ms/step - loss: 1.6122 - accuracy: 0.4622 - val_loss: 1.5566 - val_accuracy: 0.4693 Epoch 7/100 71/71 [==============================] - 1s 10ms/step - loss: 1.4663 - accuracy: 0.5112 - val_loss: 1.4411 - val_accuracy: 0.5280 Epoch 8/100 71/71 [==============================] - 1s 10ms/step - loss: 1.3284 - accuracy: 0.5644 - val_loss: 1.2242 - val_accuracy: 0.5997 Epoch 9/100 71/71 [==============================] - 1s 10ms/step - loss: 1.1795 - accuracy: 0.6087 - val_loss: 1.1168 - val_accuracy: 0.6247 Epoch 10/100 71/71 [==============================] - 1s 10ms/step - loss: 1.0902 - accuracy: 0.6444 - val_loss: 1.0674 - val_accuracy: 0.6467 Epoch 11/100 71/71 [==============================] - 1s 10ms/step - loss: 0.9902 - accuracy: 0.6794 - val_loss: 1.0023 - val_accuracy: 0.6723 Epoch 12/100 71/71 [==============================] - 1s 10ms/step - loss: 0.9235 - accuracy: 0.6964 - val_loss: 0.8972 - val_accuracy: 0.7013 Epoch 13/100 71/71 [==============================] - 1s 10ms/step - loss: 0.8587 - accuracy: 0.7212 - val_loss: 0.8303 - val_accuracy: 0.7283 Epoch 14/100 71/71 [==============================] - 1s 10ms/step - loss: 0.8024 - accuracy: 0.7393 - val_loss: 0.8569 - val_accuracy: 0.7183 Epoch 15/100 71/71 [==============================] - 1s 10ms/step - loss: 0.7237 - accuracy: 0.7642 - val_loss: 0.8861 - val_accuracy: 0.7073 Epoch 16/100 71/71 [==============================] - 1s 10ms/step - loss: 0.6748 - accuracy: 0.7809 - val_loss: 0.7033 - val_accuracy: 0.7677 Epoch 17/100 71/71 [==============================] - 1s 10ms/step - loss: 0.6270 - accuracy: 0.7982 - val_loss: 0.6378 - val_accuracy: 0.7847 Epoch 18/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5625 - accuracy: 0.8140 - val_loss: 0.8081 - val_accuracy: 0.7243 Epoch 19/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5697 - accuracy: 0.8124 - val_loss: 0.6357 - val_accuracy: 0.7937 Epoch 20/100 71/71 [==============================] - 1s 9ms/step - loss: 0.5377 - accuracy: 0.8260 - val_loss: 0.6023 - val_accuracy: 0.8010 Epoch 21/100 71/71 [==============================] - 1s 9ms/step - loss: 0.4821 - accuracy: 0.8423 - val_loss: 0.5407 - val_accuracy: 0.8207 Epoch 22/100 71/71 [==============================] - 1s 9ms/step - loss: 0.4148 - accuracy: 0.8661 - val_loss: 0.5067 - val_accuracy: 0.8333 Epoch 23/100 71/71 [==============================] - 1s 10ms/step - loss: 0.3800 - accuracy: 0.8779 - val_loss: 0.4703 - val_accuracy: 0.8440 Epoch 24/100 71/71 [==============================] - 1s 9ms/step - loss: 0.3633 - accuracy: 0.8800 - val_loss: 0.4988 - val_accuracy: 0.8337 Epoch 25/100 71/71 [==============================] - 1s 10ms/step - loss: 0.3816 - accuracy: 0.8744 - val_loss: 0.5042 - val_accuracy: 0.8333 Epoch 26/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3012 - accuracy: 0.9034 - val_loss: 0.4437 - val_accuracy: 0.8543 Epoch 27/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2783 - accuracy: 0.9101 - val_loss: 0.4332 - val_accuracy: 0.8593 Epoch 28/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2809 - accuracy: 0.9085 - val_loss: 0.4122 - val_accuracy: 0.8650 Epoch 29/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2491 - accuracy: 0.9183 - val_loss: 0.4048 - val_accuracy: 0.8743 Epoch 30/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2407 - accuracy: 0.9232 - val_loss: 0.4886 - val_accuracy: 0.8443 Epoch 31/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2177 - accuracy: 0.9296 - val_loss: 0.3877 - val_accuracy: 0.8810 Epoch 32/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2078 - accuracy: 0.9323 - val_loss: 0.4027 - val_accuracy: 0.8760 Epoch 33/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1605 - accuracy: 0.9494 - val_loss: 0.4201 - val_accuracy: 0.8733 Epoch 34/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1697 - accuracy: 0.9454 - val_loss: 0.4051 - val_accuracy: 0.8717 Epoch 35/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1572 - accuracy: 0.9495 - val_loss: 0.4018 - val_accuracy: 0.8823 Epoch 36/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1461 - accuracy: 0.9536 - val_loss: 0.4161 - val_accuracy: 0.8763 Epoch 37/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1481 - accuracy: 0.9509 - val_loss: 0.4155 - val_accuracy: 0.8780 Epoch 38/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1289 - accuracy: 0.9600 - val_loss: 0.3643 - val_accuracy: 0.8943 Epoch 39/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1338 - accuracy: 0.9556 - val_loss: 0.6029 - val_accuracy: 0.8483 Epoch 40/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1629 - accuracy: 0.9459 - val_loss: 0.4850 - val_accuracy: 0.8600 Epoch 41/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1105 - accuracy: 0.9660 - val_loss: 0.3683 - val_accuracy: 0.8937 Epoch 42/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0839 - accuracy: 0.9726 - val_loss: 0.4113 - val_accuracy: 0.8887 Epoch 43/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1311 - accuracy: 0.9574 - val_loss: 0.4489 - val_accuracy: 0.8770 Epoch 44/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1095 - accuracy: 0.9641 - val_loss: 0.4004 - val_accuracy: 0.8863 Epoch 45/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1049 - accuracy: 0.9658 - val_loss: 0.3921 - val_accuracy: 0.8890 Epoch 46/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0851 - accuracy: 0.9714 - val_loss: 0.3956 - val_accuracy: 0.8963 Epoch 47/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0688 - accuracy: 0.9783 - val_loss: 0.3852 - val_accuracy: 0.8947 Epoch 48/100 71/71 [==============================] - 1s 11ms/step - loss: 0.0636 - accuracy: 0.9790 - val_loss: 0.3796 - val_accuracy: 0.8990 Epoch 49/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0562 - accuracy: 0.9828 - val_loss: 0.4066 - val_accuracy: 0.8990 Epoch 50/100 71/71 [==============================] - 1s 11ms/step - loss: 0.0584 - accuracy: 0.9822 - val_loss: 0.4110 - val_accuracy: 0.9007 Epoch 51/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0618 - accuracy: 0.9800 - val_loss: 0.3919 - val_accuracy: 0.9037 Epoch 52/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0533 - accuracy: 0.9833 - val_loss: 0.4415 - val_accuracy: 0.8970 Epoch 53/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1083 - accuracy: 0.9634 - val_loss: 0.4063 - val_accuracy: 0.8907 Epoch 54/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0638 - accuracy: 0.9786 - val_loss: 0.3673 - val_accuracy: 0.9103 Epoch 55/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0549 - accuracy: 0.9825 - val_loss: 0.4428 - val_accuracy: 0.8893 Epoch 56/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1112 - accuracy: 0.9654 - val_loss: 0.4061 - val_accuracy: 0.8960 Epoch 57/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0373 - accuracy: 0.9903 - val_loss: 0.3920 - val_accuracy: 0.9027 Epoch 58/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0459 - accuracy: 0.9844 - val_loss: 0.4146 - val_accuracy: 0.9047 Epoch 59/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0385 - accuracy: 0.9874 - val_loss: 0.3997 - val_accuracy: 0.9043 Epoch 60/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0430 - accuracy: 0.9867 - val_loss: 0.4771 - val_accuracy: 0.8887 Epoch 61/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0731 - accuracy: 0.9743 - val_loss: 0.4181 - val_accuracy: 0.8987 Epoch 62/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0414 - accuracy: 0.9864 - val_loss: 0.4131 - val_accuracy: 0.9023 Epoch 63/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0501 - accuracy: 0.9839 - val_loss: 0.4700 - val_accuracy: 0.8907 Epoch 64/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0647 - accuracy: 0.9787 - val_loss: 0.4797 - val_accuracy: 0.8823 Epoch 65/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0479 - accuracy: 0.9828 - val_loss: 0.3772 - val_accuracy: 0.9037 Epoch 66/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0496 - accuracy: 0.9837 - val_loss: 0.3887 - val_accuracy: 0.9067 Epoch 67/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0265 - accuracy: 0.9920 - val_loss: 0.3867 - val_accuracy: 0.9070 Epoch 68/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0476 - accuracy: 0.9844 - val_loss: 0.4285 - val_accuracy: 0.9047 Epoch 69/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0349 - accuracy: 0.9886 - val_loss: 0.4436 - val_accuracy: 0.9030 Epoch 70/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0263 - accuracy: 0.9925 - val_loss: 0.4303 - val_accuracy: 0.8990 Epoch 71/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0402 - accuracy: 0.9872 - val_loss: 0.4145 - val_accuracy: 0.9030 Epoch 72/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0548 - accuracy: 0.9825 - val_loss: 0.3914 - val_accuracy: 0.8980 Epoch 73/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0254 - accuracy: 0.9911 - val_loss: 0.4522 - val_accuracy: 0.9027 Epoch 74/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0325 - accuracy: 0.9897 - val_loss: 0.3617 - val_accuracy: 0.9130 Epoch 75/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0265 - accuracy: 0.9910 - val_loss: 0.4989 - val_accuracy: 0.8940 Epoch 76/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0585 - accuracy: 0.9822 - val_loss: 0.4037 - val_accuracy: 0.9057 Epoch 77/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0482 - accuracy: 0.9852 - val_loss: 0.4623 - val_accuracy: 0.8890 Epoch 78/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0267 - accuracy: 0.9919 - val_loss: 0.3574 - val_accuracy: 0.9200 Epoch 79/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0523 - accuracy: 0.9843 - val_loss: 0.3885 - val_accuracy: 0.9080 Epoch 80/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0544 - accuracy: 0.9814 - val_loss: 0.3802 - val_accuracy: 0.9107 Epoch 81/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0268 - accuracy: 0.9915 - val_loss: 0.3718 - val_accuracy: 0.9190 Epoch 82/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0217 - accuracy: 0.9940 - val_loss: 0.4182 - val_accuracy: 0.9117 Epoch 83/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0156 - accuracy: 0.9948 - val_loss: 0.4445 - val_accuracy: 0.9083 Epoch 84/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0349 - accuracy: 0.9877 - val_loss: 0.3846 - val_accuracy: 0.9140 Epoch 85/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0242 - accuracy: 0.9940 - val_loss: 0.3942 - val_accuracy: 0.9077 Epoch 86/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0277 - accuracy: 0.9912 - val_loss: 0.4164 - val_accuracy: 0.9090 Epoch 87/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0428 - accuracy: 0.9858 - val_loss: 0.4470 - val_accuracy: 0.8970 Epoch 88/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0196 - accuracy: 0.9940 - val_loss: 0.3850 - val_accuracy: 0.9240 Epoch 89/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0277 - accuracy: 0.9917 - val_loss: 0.4661 - val_accuracy: 0.9053 Epoch 90/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0248 - accuracy: 0.9924 - val_loss: 0.5707 - val_accuracy: 0.8800 Epoch 91/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0616 - accuracy: 0.9795 - val_loss: 0.4678 - val_accuracy: 0.9040 Epoch 92/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0237 - accuracy: 0.9927 - val_loss: 0.4216 - val_accuracy: 0.9063 Epoch 93/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0193 - accuracy: 0.9937 - val_loss: 0.3947 - val_accuracy: 0.9163 Epoch 94/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0221 - accuracy: 0.9929 - val_loss: 0.6629 - val_accuracy: 0.8723 Epoch 95/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0460 - accuracy: 0.9852 - val_loss: 0.4614 - val_accuracy: 0.9043 Epoch 96/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0201 - accuracy: 0.9935 - val_loss: 0.4845 - val_accuracy: 0.9060 Epoch 97/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0234 - accuracy: 0.9931 - val_loss: 0.6024 - val_accuracy: 0.8967 Epoch 98/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0174 - accuracy: 0.9950 - val_loss: 0.4323 - val_accuracy: 0.9093 Epoch 99/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0118 - accuracy: 0.9967 - val_loss: 0.6201 - val_accuracy: 0.8863 Epoch 100/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0369 - accuracy: 0.9870 - val_loss: 0.5686 - val_accuracy: 0.8803 94/94 [==============================] - 0s 3ms/step - loss: 0.5276 - accuracy: 0.8843 CNN Error: 11.57%
# Model 2
model = Sequential()
model.add(Conv2D(64, (3, 3), activation='relu',input_shape=(31,31,1)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(256, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(512, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
history = model.fit(X_train,y_train, validation_data=(X_val,y_val),epochs=100, batch_size=128)
model.save_weights("./CNN Weights (31 by 31)/model2.h5")
scores = model.evaluate(X_test,y_test)
print("CNN Error: %.2f%%" % (100-scores[1]*100))
plotAUC(history)
Epoch 1/100 71/71 [==============================] - 2s 13ms/step - loss: 2.6128 - accuracy: 0.1049 - val_loss: 2.6860 - val_accuracy: 0.0830 Epoch 2/100 71/71 [==============================] - 1s 10ms/step - loss: 2.4505 - accuracy: 0.1496 - val_loss: 2.4580 - val_accuracy: 0.1843 Epoch 3/100 71/71 [==============================] - 1s 10ms/step - loss: 2.2909 - accuracy: 0.2119 - val_loss: 2.2156 - val_accuracy: 0.2617 Epoch 4/100 71/71 [==============================] - 1s 10ms/step - loss: 2.0178 - accuracy: 0.3309 - val_loss: 1.8818 - val_accuracy: 0.3957 Epoch 5/100 71/71 [==============================] - 1s 10ms/step - loss: 1.7980 - accuracy: 0.4023 - val_loss: 1.6759 - val_accuracy: 0.4537 Epoch 6/100 71/71 [==============================] - 1s 11ms/step - loss: 1.5902 - accuracy: 0.4735 - val_loss: 1.4320 - val_accuracy: 0.5333 Epoch 7/100 71/71 [==============================] - 1s 11ms/step - loss: 1.4324 - accuracy: 0.5274 - val_loss: 1.2522 - val_accuracy: 0.6043 Epoch 8/100 71/71 [==============================] - 1s 11ms/step - loss: 1.2794 - accuracy: 0.5835 - val_loss: 1.0932 - val_accuracy: 0.6590 Epoch 9/100 71/71 [==============================] - 1s 11ms/step - loss: 1.1820 - accuracy: 0.6179 - val_loss: 1.0650 - val_accuracy: 0.6693 Epoch 10/100 71/71 [==============================] - 1s 10ms/step - loss: 1.1185 - accuracy: 0.6310 - val_loss: 0.9088 - val_accuracy: 0.7100 Epoch 11/100 71/71 [==============================] - 1s 11ms/step - loss: 1.0356 - accuracy: 0.6627 - val_loss: 0.9029 - val_accuracy: 0.7093 Epoch 12/100 71/71 [==============================] - 1s 11ms/step - loss: 0.9674 - accuracy: 0.6843 - val_loss: 0.8113 - val_accuracy: 0.7400 Epoch 13/100 71/71 [==============================] - 1s 10ms/step - loss: 0.8991 - accuracy: 0.7075 - val_loss: 0.7396 - val_accuracy: 0.7557 Epoch 14/100 71/71 [==============================] - 1s 11ms/step - loss: 0.8160 - accuracy: 0.7377 - val_loss: 0.6937 - val_accuracy: 0.7720 Epoch 15/100 71/71 [==============================] - 1s 10ms/step - loss: 0.7544 - accuracy: 0.7589 - val_loss: 0.6330 - val_accuracy: 0.7933 Epoch 16/100 71/71 [==============================] - 1s 10ms/step - loss: 0.7057 - accuracy: 0.7749 - val_loss: 0.6405 - val_accuracy: 0.7870 Epoch 17/100 71/71 [==============================] - 1s 10ms/step - loss: 0.6769 - accuracy: 0.7816 - val_loss: 0.6143 - val_accuracy: 0.8043 Epoch 18/100 71/71 [==============================] - 1s 10ms/step - loss: 0.6169 - accuracy: 0.8001 - val_loss: 0.5223 - val_accuracy: 0.8280 Epoch 19/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5773 - accuracy: 0.8140 - val_loss: 0.4988 - val_accuracy: 0.8350 Epoch 20/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5671 - accuracy: 0.8146 - val_loss: 0.4716 - val_accuracy: 0.8500 Epoch 21/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5154 - accuracy: 0.8324 - val_loss: 0.4680 - val_accuracy: 0.8540 Epoch 22/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5492 - accuracy: 0.8257 - val_loss: 0.4248 - val_accuracy: 0.8687 Epoch 23/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4633 - accuracy: 0.8545 - val_loss: 0.4488 - val_accuracy: 0.8587 Epoch 24/100 71/71 [==============================] - 1s 10ms/step - loss: 0.4661 - accuracy: 0.8505 - val_loss: 0.3841 - val_accuracy: 0.8807 Epoch 25/100 71/71 [==============================] - 1s 10ms/step - loss: 0.4506 - accuracy: 0.8510 - val_loss: 0.3787 - val_accuracy: 0.8847 Epoch 26/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4040 - accuracy: 0.8677 - val_loss: 0.4119 - val_accuracy: 0.8773 Epoch 27/100 71/71 [==============================] - 1s 10ms/step - loss: 0.4058 - accuracy: 0.8730 - val_loss: 0.3697 - val_accuracy: 0.8797 Epoch 28/100 71/71 [==============================] - 1s 10ms/step - loss: 0.3599 - accuracy: 0.8815 - val_loss: 0.3772 - val_accuracy: 0.8853 Epoch 29/100 71/71 [==============================] - 1s 10ms/step - loss: 0.3791 - accuracy: 0.8739 - val_loss: 0.3184 - val_accuracy: 0.9020 Epoch 30/100 71/71 [==============================] - 1s 10ms/step - loss: 0.3425 - accuracy: 0.8920 - val_loss: 0.3935 - val_accuracy: 0.8727 Epoch 31/100 71/71 [==============================] - 1s 10ms/step - loss: 0.3292 - accuracy: 0.8898 - val_loss: 0.3137 - val_accuracy: 0.9000 Epoch 32/100 71/71 [==============================] - 1s 10ms/step - loss: 0.3257 - accuracy: 0.8931 - val_loss: 0.3378 - val_accuracy: 0.8933 Epoch 33/100 71/71 [==============================] - 1s 10ms/step - loss: 0.3240 - accuracy: 0.8963 - val_loss: 0.3140 - val_accuracy: 0.9037 Epoch 34/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2991 - accuracy: 0.9029 - val_loss: 0.3032 - val_accuracy: 0.9130 Epoch 35/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2926 - accuracy: 0.9060 - val_loss: 0.2920 - val_accuracy: 0.9090 Epoch 36/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2770 - accuracy: 0.9103 - val_loss: 0.3357 - val_accuracy: 0.8973 Epoch 37/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2877 - accuracy: 0.9055 - val_loss: 0.3074 - val_accuracy: 0.9140 Epoch 38/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2670 - accuracy: 0.9116 - val_loss: 0.2753 - val_accuracy: 0.9140 Epoch 39/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2505 - accuracy: 0.9189 - val_loss: 0.2605 - val_accuracy: 0.9160 Epoch 40/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2479 - accuracy: 0.9179 - val_loss: 0.2608 - val_accuracy: 0.9207 Epoch 41/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2510 - accuracy: 0.9217 - val_loss: 0.2709 - val_accuracy: 0.9183 Epoch 42/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2277 - accuracy: 0.9249 - val_loss: 0.2557 - val_accuracy: 0.9257 Epoch 43/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2116 - accuracy: 0.9314 - val_loss: 0.2757 - val_accuracy: 0.9183 Epoch 44/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2135 - accuracy: 0.9315 - val_loss: 0.2667 - val_accuracy: 0.9180 Epoch 45/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2076 - accuracy: 0.9287 - val_loss: 0.2818 - val_accuracy: 0.9147 Epoch 46/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2179 - accuracy: 0.9274 - val_loss: 0.2543 - val_accuracy: 0.9213 Epoch 47/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2228 - accuracy: 0.9290 - val_loss: 0.2513 - val_accuracy: 0.9257 Epoch 48/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2003 - accuracy: 0.9358 - val_loss: 0.2567 - val_accuracy: 0.9223 Epoch 49/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1958 - accuracy: 0.9343 - val_loss: 0.2469 - val_accuracy: 0.9267 Epoch 50/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1971 - accuracy: 0.9352 - val_loss: 0.2459 - val_accuracy: 0.9290 Epoch 51/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1920 - accuracy: 0.9413 - val_loss: 0.2469 - val_accuracy: 0.9297 Epoch 52/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1765 - accuracy: 0.9425 - val_loss: 0.2852 - val_accuracy: 0.9220 Epoch 53/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1648 - accuracy: 0.9485 - val_loss: 0.2754 - val_accuracy: 0.9227 Epoch 54/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1608 - accuracy: 0.9467 - val_loss: 0.2652 - val_accuracy: 0.9277 Epoch 55/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2373 - accuracy: 0.9238 - val_loss: 0.2433 - val_accuracy: 0.9303 Epoch 56/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1627 - accuracy: 0.9507 - val_loss: 0.2478 - val_accuracy: 0.9300 Epoch 57/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1821 - accuracy: 0.9403 - val_loss: 0.2459 - val_accuracy: 0.9323 Epoch 58/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2045 - accuracy: 0.9366 - val_loss: 0.3150 - val_accuracy: 0.9040 Epoch 59/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1736 - accuracy: 0.9469 - val_loss: 0.2520 - val_accuracy: 0.9290 Epoch 60/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1649 - accuracy: 0.9474 - val_loss: 0.2630 - val_accuracy: 0.9283 Epoch 61/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1495 - accuracy: 0.9508 - val_loss: 0.2455 - val_accuracy: 0.9293 Epoch 62/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1542 - accuracy: 0.9495 - val_loss: 0.2590 - val_accuracy: 0.9287 Epoch 63/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1431 - accuracy: 0.9539 - val_loss: 0.2571 - val_accuracy: 0.9313 Epoch 64/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1425 - accuracy: 0.9535 - val_loss: 0.2563 - val_accuracy: 0.9303 Epoch 65/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1484 - accuracy: 0.9528 - val_loss: 0.2418 - val_accuracy: 0.9360 Epoch 66/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1434 - accuracy: 0.9537 - val_loss: 0.2743 - val_accuracy: 0.9250 Epoch 67/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1279 - accuracy: 0.9584 - val_loss: 0.2575 - val_accuracy: 0.9313 Epoch 68/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1594 - accuracy: 0.9485 - val_loss: 0.2656 - val_accuracy: 0.9293 Epoch 69/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1270 - accuracy: 0.9595 - val_loss: 0.2605 - val_accuracy: 0.9330 Epoch 70/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1458 - accuracy: 0.9555 - val_loss: 0.2572 - val_accuracy: 0.9333 Epoch 71/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1313 - accuracy: 0.9581 - val_loss: 0.2337 - val_accuracy: 0.9343 Epoch 72/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1335 - accuracy: 0.9587 - val_loss: 0.3296 - val_accuracy: 0.9143 Epoch 73/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1307 - accuracy: 0.9584 - val_loss: 0.2508 - val_accuracy: 0.9310 Epoch 74/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1180 - accuracy: 0.9640 - val_loss: 0.2857 - val_accuracy: 0.9273 Epoch 75/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1266 - accuracy: 0.9599 - val_loss: 0.2413 - val_accuracy: 0.9347 Epoch 76/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1141 - accuracy: 0.9634 - val_loss: 0.2506 - val_accuracy: 0.9313 Epoch 77/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1173 - accuracy: 0.9615 - val_loss: 0.2706 - val_accuracy: 0.9287 Epoch 78/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1415 - accuracy: 0.9546 - val_loss: 0.2576 - val_accuracy: 0.9340 Epoch 79/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1197 - accuracy: 0.9629 - val_loss: 0.2579 - val_accuracy: 0.9363 Epoch 80/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1230 - accuracy: 0.9603 - val_loss: 0.2706 - val_accuracy: 0.9323 Epoch 81/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1017 - accuracy: 0.9678 - val_loss: 0.2336 - val_accuracy: 0.9380 Epoch 82/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1053 - accuracy: 0.9663 - val_loss: 0.2378 - val_accuracy: 0.9357 Epoch 83/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1349 - accuracy: 0.9579 - val_loss: 0.2603 - val_accuracy: 0.9307 Epoch 84/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1328 - accuracy: 0.9575 - val_loss: 0.2449 - val_accuracy: 0.9357 Epoch 85/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1047 - accuracy: 0.9677 - val_loss: 0.2429 - val_accuracy: 0.9377 Epoch 86/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0999 - accuracy: 0.9689 - val_loss: 0.2405 - val_accuracy: 0.9407 Epoch 87/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1093 - accuracy: 0.9644 - val_loss: 0.2603 - val_accuracy: 0.9350 Epoch 88/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1139 - accuracy: 0.9650 - val_loss: 0.2339 - val_accuracy: 0.9397 Epoch 89/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1022 - accuracy: 0.9661 - val_loss: 0.2449 - val_accuracy: 0.9417 Epoch 90/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1065 - accuracy: 0.9673 - val_loss: 0.2410 - val_accuracy: 0.9380 Epoch 91/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1024 - accuracy: 0.9663 - val_loss: 0.3430 - val_accuracy: 0.9110 Epoch 92/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1294 - accuracy: 0.9605 - val_loss: 0.2636 - val_accuracy: 0.9343 Epoch 93/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1018 - accuracy: 0.9674 - val_loss: 0.2629 - val_accuracy: 0.9330 Epoch 94/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0995 - accuracy: 0.9699 - val_loss: 0.2595 - val_accuracy: 0.9360 Epoch 95/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0992 - accuracy: 0.9689 - val_loss: 0.2472 - val_accuracy: 0.9400 Epoch 96/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1240 - accuracy: 0.9602 - val_loss: 0.2566 - val_accuracy: 0.9347 Epoch 97/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0958 - accuracy: 0.9679 - val_loss: 0.2544 - val_accuracy: 0.9370 Epoch 98/100 71/71 [==============================] - 1s 11ms/step - loss: 0.0971 - accuracy: 0.9709 - val_loss: 0.2619 - val_accuracy: 0.9327 Epoch 99/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1003 - accuracy: 0.9692 - val_loss: 0.2625 - val_accuracy: 0.9383 Epoch 100/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1086 - accuracy: 0.9684 - val_loss: 0.2634 - val_accuracy: 0.9370 94/94 [==============================] - 0s 4ms/step - loss: 0.2367 - accuracy: 0.9367 CNN Error: 6.33%
model.summary()
Model: "sequential_29"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
conv2d_81 (Conv2D) (None, 29, 29, 64) 640
max_pooling2d_75 (MaxPoolin (None, 14, 14, 64) 0
g2D)
dropout_73 (Dropout) (None, 14, 14, 64) 0
conv2d_82 (Conv2D) (None, 12, 12, 128) 73856
max_pooling2d_76 (MaxPoolin (None, 6, 6, 128) 0
g2D)
dropout_74 (Dropout) (None, 6, 6, 128) 0
conv2d_83 (Conv2D) (None, 4, 4, 256) 295168
max_pooling2d_77 (MaxPoolin (None, 2, 2, 256) 0
g2D)
dropout_75 (Dropout) (None, 2, 2, 256) 0
flatten_23 (Flatten) (None, 1024) 0
dense_72 (Dense) (None, 512) 524800
dropout_76 (Dropout) (None, 512) 0
dense_73 (Dense) (None, 256) 131328
dropout_77 (Dropout) (None, 256) 0
dense_74 (Dense) (None, 15) 3855
=================================================================
Total params: 1,029,647
Trainable params: 1,029,647
Non-trainable params: 0
_________________________________________________________________
model = Sequential()
model.add(Conv2D(64, (3, 3), activation='relu',input_shape=(31,31,1)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(256, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(512, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
model.load_weights("./CNN Weights (31 by 31)/model2.h5")
# Model 3
model = Sequential()
model.add(Conv2D(64, (3, 3), activation='relu',input_shape=(31,31,1)))
model.add(Conv2D(64, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Flatten())
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(128, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
history = model.fit(X_train,y_train, validation_data=(X_val,y_val),epochs=100, batch_size=128)
scores = model.evaluate(X_test,y_test)
print("CNN Error: %.2f%%" % (100-scores[1]*100))
plotAUC(history)
Epoch 1/100 71/71 [==============================] - 2s 18ms/step - loss: 2.6207 - accuracy: 0.0944 - val_loss: 2.6193 - val_accuracy: 0.0917 Epoch 2/100 71/71 [==============================] - 1s 15ms/step - loss: 2.4700 - accuracy: 0.1455 - val_loss: 2.4935 - val_accuracy: 0.1490 Epoch 3/100 71/71 [==============================] - 1s 15ms/step - loss: 2.2904 - accuracy: 0.2118 - val_loss: 2.1756 - val_accuracy: 0.2997 Epoch 4/100 71/71 [==============================] - 1s 15ms/step - loss: 2.0616 - accuracy: 0.3115 - val_loss: 1.9531 - val_accuracy: 0.3847 Epoch 5/100 71/71 [==============================] - 1s 15ms/step - loss: 1.8308 - accuracy: 0.3989 - val_loss: 1.6051 - val_accuracy: 0.4760 Epoch 6/100 71/71 [==============================] - 1s 15ms/step - loss: 1.6224 - accuracy: 0.4739 - val_loss: 1.5053 - val_accuracy: 0.4833 Epoch 7/100 71/71 [==============================] - 1s 15ms/step - loss: 1.4859 - accuracy: 0.5130 - val_loss: 1.4160 - val_accuracy: 0.5277 Epoch 8/100 71/71 [==============================] - 1s 15ms/step - loss: 1.3399 - accuracy: 0.5614 - val_loss: 1.1664 - val_accuracy: 0.6367 Epoch 9/100 71/71 [==============================] - 1s 16ms/step - loss: 1.2327 - accuracy: 0.5974 - val_loss: 1.1901 - val_accuracy: 0.6100 Epoch 10/100 71/71 [==============================] - 1s 16ms/step - loss: 1.0850 - accuracy: 0.6469 - val_loss: 0.9677 - val_accuracy: 0.6987 Epoch 11/100 71/71 [==============================] - 1s 15ms/step - loss: 1.0188 - accuracy: 0.6689 - val_loss: 0.9635 - val_accuracy: 0.6923 Epoch 12/100 71/71 [==============================] - 1s 15ms/step - loss: 0.9385 - accuracy: 0.7005 - val_loss: 0.9326 - val_accuracy: 0.6993 Epoch 13/100 71/71 [==============================] - 1s 15ms/step - loss: 0.8432 - accuracy: 0.7325 - val_loss: 0.7800 - val_accuracy: 0.7443 Epoch 14/100 71/71 [==============================] - 1s 15ms/step - loss: 0.7854 - accuracy: 0.7427 - val_loss: 0.8441 - val_accuracy: 0.7247 Epoch 15/100 71/71 [==============================] - 1s 15ms/step - loss: 0.7389 - accuracy: 0.7632 - val_loss: 0.7713 - val_accuracy: 0.7563 Epoch 16/100 71/71 [==============================] - 1s 16ms/step - loss: 0.6444 - accuracy: 0.7904 - val_loss: 0.6669 - val_accuracy: 0.7830 Epoch 17/100 71/71 [==============================] - 1s 15ms/step - loss: 0.6340 - accuracy: 0.7986 - val_loss: 0.6499 - val_accuracy: 0.7947 Epoch 18/100 71/71 [==============================] - 1s 15ms/step - loss: 0.5532 - accuracy: 0.8221 - val_loss: 0.6835 - val_accuracy: 0.7883 Epoch 19/100 71/71 [==============================] - 1s 16ms/step - loss: 0.5203 - accuracy: 0.8323 - val_loss: 0.7141 - val_accuracy: 0.7800 Epoch 20/100 71/71 [==============================] - 1s 15ms/step - loss: 0.4937 - accuracy: 0.8434 - val_loss: 0.6926 - val_accuracy: 0.7920 Epoch 21/100 71/71 [==============================] - 1s 16ms/step - loss: 0.4467 - accuracy: 0.8554 - val_loss: 0.5955 - val_accuracy: 0.8150 Epoch 22/100 71/71 [==============================] - 1s 15ms/step - loss: 0.4244 - accuracy: 0.8623 - val_loss: 0.6027 - val_accuracy: 0.8273 Epoch 23/100 71/71 [==============================] - 1s 15ms/step - loss: 0.3654 - accuracy: 0.8799 - val_loss: 0.6912 - val_accuracy: 0.8070 Epoch 24/100 71/71 [==============================] - 1s 15ms/step - loss: 0.3767 - accuracy: 0.8784 - val_loss: 0.6309 - val_accuracy: 0.8243 Epoch 25/100 71/71 [==============================] - 1s 15ms/step - loss: 0.3771 - accuracy: 0.8793 - val_loss: 0.5412 - val_accuracy: 0.8473 Epoch 26/100 71/71 [==============================] - 1s 15ms/step - loss: 0.3258 - accuracy: 0.8928 - val_loss: 0.5587 - val_accuracy: 0.8377 Epoch 27/100 71/71 [==============================] - 1s 16ms/step - loss: 0.2920 - accuracy: 0.9046 - val_loss: 0.6032 - val_accuracy: 0.8373 Epoch 28/100 71/71 [==============================] - 1s 15ms/step - loss: 0.2889 - accuracy: 0.9010 - val_loss: 0.5221 - val_accuracy: 0.8580 Epoch 29/100 71/71 [==============================] - 1s 16ms/step - loss: 0.2728 - accuracy: 0.9139 - val_loss: 0.5533 - val_accuracy: 0.8513 Epoch 30/100 71/71 [==============================] - 1s 15ms/step - loss: 0.2420 - accuracy: 0.9206 - val_loss: 0.5384 - val_accuracy: 0.8647 Epoch 31/100 71/71 [==============================] - 1s 15ms/step - loss: 0.2492 - accuracy: 0.9185 - val_loss: 0.5712 - val_accuracy: 0.8520 Epoch 32/100 71/71 [==============================] - 1s 16ms/step - loss: 0.2446 - accuracy: 0.9214 - val_loss: 0.5303 - val_accuracy: 0.8637 Epoch 33/100 71/71 [==============================] - 1s 15ms/step - loss: 0.2260 - accuracy: 0.9261 - val_loss: 0.5558 - val_accuracy: 0.8597 Epoch 34/100 71/71 [==============================] - 1s 15ms/step - loss: 0.2088 - accuracy: 0.9309 - val_loss: 0.5287 - val_accuracy: 0.8590 Epoch 35/100 71/71 [==============================] - 1s 16ms/step - loss: 0.1894 - accuracy: 0.9369 - val_loss: 0.7007 - val_accuracy: 0.8470 Epoch 36/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1998 - accuracy: 0.9351 - val_loss: 0.6065 - val_accuracy: 0.8503 Epoch 37/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1990 - accuracy: 0.9344 - val_loss: 0.5400 - val_accuracy: 0.8660 Epoch 38/100 71/71 [==============================] - 1s 16ms/step - loss: 0.1751 - accuracy: 0.9417 - val_loss: 0.5392 - val_accuracy: 0.8687 Epoch 39/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1724 - accuracy: 0.9457 - val_loss: 0.5620 - val_accuracy: 0.8653 Epoch 40/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1460 - accuracy: 0.9536 - val_loss: 0.6927 - val_accuracy: 0.8357 Epoch 41/100 71/71 [==============================] - 1s 16ms/step - loss: 0.1528 - accuracy: 0.9512 - val_loss: 0.5281 - val_accuracy: 0.8697 Epoch 42/100 71/71 [==============================] - 1s 16ms/step - loss: 0.1712 - accuracy: 0.9477 - val_loss: 0.5632 - val_accuracy: 0.8597 Epoch 43/100 71/71 [==============================] - 1s 16ms/step - loss: 0.1598 - accuracy: 0.9479 - val_loss: 0.5422 - val_accuracy: 0.8743 Epoch 44/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1459 - accuracy: 0.9524 - val_loss: 0.6429 - val_accuracy: 0.8597 Epoch 45/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1439 - accuracy: 0.9536 - val_loss: 0.5584 - val_accuracy: 0.8717 Epoch 46/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1445 - accuracy: 0.9512 - val_loss: 0.5071 - val_accuracy: 0.8817 Epoch 47/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1210 - accuracy: 0.9572 - val_loss: 0.5754 - val_accuracy: 0.8753 Epoch 48/100 71/71 [==============================] - 1s 16ms/step - loss: 0.1319 - accuracy: 0.9588 - val_loss: 0.5561 - val_accuracy: 0.8780 Epoch 49/100 71/71 [==============================] - 1s 16ms/step - loss: 0.1196 - accuracy: 0.9609 - val_loss: 0.5892 - val_accuracy: 0.8677 Epoch 50/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1451 - accuracy: 0.9527 - val_loss: 0.5465 - val_accuracy: 0.8727 Epoch 51/100 71/71 [==============================] - 1s 16ms/step - loss: 0.1247 - accuracy: 0.9567 - val_loss: 0.5240 - val_accuracy: 0.8740 Epoch 52/100 71/71 [==============================] - 1s 16ms/step - loss: 0.1311 - accuracy: 0.9591 - val_loss: 0.6015 - val_accuracy: 0.8690 Epoch 53/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1304 - accuracy: 0.9606 - val_loss: 0.5315 - val_accuracy: 0.8797 Epoch 54/100 71/71 [==============================] - 1s 16ms/step - loss: 0.1184 - accuracy: 0.9633 - val_loss: 0.5961 - val_accuracy: 0.8790 Epoch 55/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1465 - accuracy: 0.9549 - val_loss: 0.6502 - val_accuracy: 0.8570 Epoch 56/100 71/71 [==============================] - 1s 16ms/step - loss: 0.1103 - accuracy: 0.9633 - val_loss: 0.5267 - val_accuracy: 0.8830 Epoch 57/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1045 - accuracy: 0.9687 - val_loss: 0.6105 - val_accuracy: 0.8730 Epoch 58/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0984 - accuracy: 0.9679 - val_loss: 0.5444 - val_accuracy: 0.8817 Epoch 59/100 71/71 [==============================] - 1s 16ms/step - loss: 0.0949 - accuracy: 0.9694 - val_loss: 0.5695 - val_accuracy: 0.8823 Epoch 60/100 71/71 [==============================] - 1s 16ms/step - loss: 0.0937 - accuracy: 0.9689 - val_loss: 0.5969 - val_accuracy: 0.8797 Epoch 61/100 71/71 [==============================] - 1s 16ms/step - loss: 0.0984 - accuracy: 0.9703 - val_loss: 0.6164 - val_accuracy: 0.8687 Epoch 62/100 71/71 [==============================] - 1s 16ms/step - loss: 0.0868 - accuracy: 0.9740 - val_loss: 0.7657 - val_accuracy: 0.8493 Epoch 63/100 71/71 [==============================] - 1s 16ms/step - loss: 0.1126 - accuracy: 0.9630 - val_loss: 0.6601 - val_accuracy: 0.8573 Epoch 64/100 71/71 [==============================] - 1s 16ms/step - loss: 0.1170 - accuracy: 0.9633 - val_loss: 0.6496 - val_accuracy: 0.8717 Epoch 65/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1197 - accuracy: 0.9644 - val_loss: 0.5359 - val_accuracy: 0.8840 Epoch 66/100 71/71 [==============================] - 1s 16ms/step - loss: 0.0923 - accuracy: 0.9696 - val_loss: 0.7889 - val_accuracy: 0.8583 Epoch 67/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0919 - accuracy: 0.9696 - val_loss: 0.5266 - val_accuracy: 0.8923 Epoch 68/100 71/71 [==============================] - 1s 16ms/step - loss: 0.0826 - accuracy: 0.9756 - val_loss: 0.6007 - val_accuracy: 0.8833 Epoch 69/100 71/71 [==============================] - 1s 16ms/step - loss: 0.1109 - accuracy: 0.9671 - val_loss: 0.5746 - val_accuracy: 0.8657 Epoch 70/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0994 - accuracy: 0.9684 - val_loss: 0.5382 - val_accuracy: 0.8890 Epoch 71/100 71/71 [==============================] - 1s 16ms/step - loss: 0.0724 - accuracy: 0.9768 - val_loss: 0.6239 - val_accuracy: 0.8753 Epoch 72/100 71/71 [==============================] - 1s 16ms/step - loss: 0.0880 - accuracy: 0.9735 - val_loss: 0.6119 - val_accuracy: 0.8747 Epoch 73/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0909 - accuracy: 0.9704 - val_loss: 0.5962 - val_accuracy: 0.8777 Epoch 74/100 71/71 [==============================] - 1s 16ms/step - loss: 0.0807 - accuracy: 0.9732 - val_loss: 0.6621 - val_accuracy: 0.8747 Epoch 75/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0734 - accuracy: 0.9790 - val_loss: 0.5978 - val_accuracy: 0.8853 Epoch 76/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0751 - accuracy: 0.9757 - val_loss: 0.6992 - val_accuracy: 0.8733 Epoch 77/100 71/71 [==============================] - 1s 16ms/step - loss: 0.0798 - accuracy: 0.9739 - val_loss: 0.7603 - val_accuracy: 0.8603 Epoch 78/100 71/71 [==============================] - 1s 16ms/step - loss: 0.0550 - accuracy: 0.9826 - val_loss: 0.6061 - val_accuracy: 0.8827 Epoch 79/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0681 - accuracy: 0.9787 - val_loss: 0.8334 - val_accuracy: 0.8607 Epoch 80/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0846 - accuracy: 0.9715 - val_loss: 0.6781 - val_accuracy: 0.8603 Epoch 81/100 71/71 [==============================] - 1s 16ms/step - loss: 0.1089 - accuracy: 0.9689 - val_loss: 0.5413 - val_accuracy: 0.8797 Epoch 82/100 71/71 [==============================] - 1s 16ms/step - loss: 0.0635 - accuracy: 0.9800 - val_loss: 0.7710 - val_accuracy: 0.8733 Epoch 83/100 71/71 [==============================] - 1s 16ms/step - loss: 0.0507 - accuracy: 0.9829 - val_loss: 0.6330 - val_accuracy: 0.8870 Epoch 84/100 71/71 [==============================] - 1s 16ms/step - loss: 0.0876 - accuracy: 0.9739 - val_loss: 0.5657 - val_accuracy: 0.8743 Epoch 85/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0762 - accuracy: 0.9760 - val_loss: 0.6424 - val_accuracy: 0.8820 Epoch 86/100 71/71 [==============================] - 1s 16ms/step - loss: 0.1577 - accuracy: 0.9557 - val_loss: 0.5863 - val_accuracy: 0.8590 Epoch 87/100 71/71 [==============================] - 1s 16ms/step - loss: 0.0660 - accuracy: 0.9794 - val_loss: 0.5485 - val_accuracy: 0.8890 Epoch 88/100 71/71 [==============================] - 1s 16ms/step - loss: 0.0726 - accuracy: 0.9774 - val_loss: 0.5885 - val_accuracy: 0.8850 Epoch 89/100 71/71 [==============================] - 1s 16ms/step - loss: 0.0557 - accuracy: 0.9812 - val_loss: 0.6670 - val_accuracy: 0.8857 Epoch 90/100 71/71 [==============================] - 1s 16ms/step - loss: 0.0579 - accuracy: 0.9833 - val_loss: 0.6483 - val_accuracy: 0.8847 Epoch 91/100 71/71 [==============================] - 1s 16ms/step - loss: 0.0593 - accuracy: 0.9805 - val_loss: 0.8121 - val_accuracy: 0.8630 Epoch 92/100 71/71 [==============================] - 1s 16ms/step - loss: 0.0560 - accuracy: 0.9827 - val_loss: 0.7754 - val_accuracy: 0.8800 Epoch 93/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0635 - accuracy: 0.9790 - val_loss: 0.6341 - val_accuracy: 0.8833 Epoch 94/100 71/71 [==============================] - 1s 16ms/step - loss: 0.0579 - accuracy: 0.9821 - val_loss: 0.6851 - val_accuracy: 0.8790 Epoch 95/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0558 - accuracy: 0.9832 - val_loss: 0.5281 - val_accuracy: 0.8967 Epoch 96/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0691 - accuracy: 0.9783 - val_loss: 0.6994 - val_accuracy: 0.8733 Epoch 97/100 71/71 [==============================] - 1s 16ms/step - loss: 0.0787 - accuracy: 0.9763 - val_loss: 0.6634 - val_accuracy: 0.8847 Epoch 98/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0573 - accuracy: 0.9824 - val_loss: 0.6206 - val_accuracy: 0.8850 Epoch 99/100 71/71 [==============================] - 1s 16ms/step - loss: 0.0741 - accuracy: 0.9760 - val_loss: 0.6079 - val_accuracy: 0.8827 Epoch 100/100 71/71 [==============================] - 1s 16ms/step - loss: 0.0400 - accuracy: 0.9873 - val_loss: 0.6240 - val_accuracy: 0.8873 94/94 [==============================] - 0s 4ms/step - loss: 0.6003 - accuracy: 0.8913 CNN Error: 10.87%
# Model 3
model = Sequential()
model.add(Conv2D(64, (3, 3), activation='relu',input_shape=(31,31,1)))
model.add(Conv2D(64, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.2))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.2))
model.add(Flatten())
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(128, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
history = model.fit(X_train,y_train, validation_data=(X_val,y_val),epochs=100, batch_size=128)
model.save_weights("./CNN Weights (31 by 31)/model3.h5")
scores = model.evaluate(X_test,y_test)
print("CNN Error: %.2f%%" % (100-scores[1]*100))
plotAUC(history)
Epoch 1/100 71/71 [==============================] - 2s 19ms/step - loss: 2.6320 - accuracy: 0.0940 - val_loss: 2.6084 - val_accuracy: 0.0873 Epoch 2/100 71/71 [==============================] - 1s 16ms/step - loss: 2.4762 - accuracy: 0.1469 - val_loss: 2.3811 - val_accuracy: 0.2037 Epoch 3/100 71/71 [==============================] - 1s 16ms/step - loss: 2.2667 - accuracy: 0.2335 - val_loss: 2.1768 - val_accuracy: 0.2717 Epoch 4/100 71/71 [==============================] - 1s 15ms/step - loss: 2.0840 - accuracy: 0.3070 - val_loss: 1.9407 - val_accuracy: 0.3510 Epoch 5/100 71/71 [==============================] - 1s 16ms/step - loss: 1.8628 - accuracy: 0.3842 - val_loss: 1.7501 - val_accuracy: 0.4310 Epoch 6/100 71/71 [==============================] - 1s 16ms/step - loss: 1.6890 - accuracy: 0.4438 - val_loss: 1.4952 - val_accuracy: 0.5113 Epoch 7/100 71/71 [==============================] - 1s 16ms/step - loss: 1.5292 - accuracy: 0.4992 - val_loss: 1.3468 - val_accuracy: 0.5513 Epoch 8/100 71/71 [==============================] - 1s 16ms/step - loss: 1.3698 - accuracy: 0.5428 - val_loss: 1.3029 - val_accuracy: 0.5757 Epoch 9/100 71/71 [==============================] - 1s 16ms/step - loss: 1.2473 - accuracy: 0.5912 - val_loss: 1.1597 - val_accuracy: 0.6370 Epoch 10/100 71/71 [==============================] - 1s 16ms/step - loss: 1.1916 - accuracy: 0.6162 - val_loss: 1.1134 - val_accuracy: 0.6360 Epoch 11/100 71/71 [==============================] - 1s 16ms/step - loss: 1.1035 - accuracy: 0.6470 - val_loss: 0.9552 - val_accuracy: 0.6900 Epoch 12/100 71/71 [==============================] - 1s 17ms/step - loss: 1.0496 - accuracy: 0.6642 - val_loss: 0.9029 - val_accuracy: 0.7167 Epoch 13/100 71/71 [==============================] - 1s 16ms/step - loss: 0.9649 - accuracy: 0.6884 - val_loss: 0.9112 - val_accuracy: 0.7080 Epoch 14/100 71/71 [==============================] - 1s 16ms/step - loss: 0.8632 - accuracy: 0.7234 - val_loss: 0.8879 - val_accuracy: 0.7247 Epoch 15/100 71/71 [==============================] - 1s 16ms/step - loss: 0.8307 - accuracy: 0.7315 - val_loss: 0.7340 - val_accuracy: 0.7740 Epoch 16/100 71/71 [==============================] - 1s 16ms/step - loss: 0.7388 - accuracy: 0.7627 - val_loss: 0.7287 - val_accuracy: 0.7630 Epoch 17/100 71/71 [==============================] - 1s 16ms/step - loss: 0.7038 - accuracy: 0.7780 - val_loss: 0.6743 - val_accuracy: 0.7863 Epoch 18/100 71/71 [==============================] - 1s 15ms/step - loss: 0.6710 - accuracy: 0.7880 - val_loss: 0.6510 - val_accuracy: 0.8017 Epoch 19/100 71/71 [==============================] - 1s 15ms/step - loss: 0.6324 - accuracy: 0.7991 - val_loss: 0.6376 - val_accuracy: 0.7980 Epoch 20/100 71/71 [==============================] - 1s 15ms/step - loss: 0.5648 - accuracy: 0.8213 - val_loss: 0.5612 - val_accuracy: 0.8217 Epoch 21/100 71/71 [==============================] - 1s 16ms/step - loss: 0.5398 - accuracy: 0.8281 - val_loss: 0.6963 - val_accuracy: 0.7970 Epoch 22/100 71/71 [==============================] - 1s 16ms/step - loss: 0.5301 - accuracy: 0.8261 - val_loss: 0.5561 - val_accuracy: 0.8230 Epoch 23/100 71/71 [==============================] - 1s 16ms/step - loss: 0.4960 - accuracy: 0.8449 - val_loss: 0.5017 - val_accuracy: 0.8503 Epoch 24/100 71/71 [==============================] - 1s 16ms/step - loss: 0.4332 - accuracy: 0.8638 - val_loss: 0.5146 - val_accuracy: 0.8423 Epoch 25/100 71/71 [==============================] - 1s 16ms/step - loss: 0.4214 - accuracy: 0.8662 - val_loss: 0.4564 - val_accuracy: 0.8573 Epoch 26/100 71/71 [==============================] - 1s 15ms/step - loss: 0.4118 - accuracy: 0.8744 - val_loss: 0.4540 - val_accuracy: 0.8617 Epoch 27/100 71/71 [==============================] - 1s 16ms/step - loss: 0.3671 - accuracy: 0.8848 - val_loss: 0.4492 - val_accuracy: 0.8593 Epoch 28/100 71/71 [==============================] - 1s 16ms/step - loss: 0.3597 - accuracy: 0.8834 - val_loss: 0.4514 - val_accuracy: 0.8637 Epoch 29/100 71/71 [==============================] - 1s 16ms/step - loss: 0.3529 - accuracy: 0.8909 - val_loss: 0.4744 - val_accuracy: 0.8567 Epoch 30/100 71/71 [==============================] - 1s 16ms/step - loss: 0.3279 - accuracy: 0.8963 - val_loss: 0.3920 - val_accuracy: 0.8797 Epoch 31/100 71/71 [==============================] - 1s 16ms/step - loss: 0.3039 - accuracy: 0.9029 - val_loss: 0.4499 - val_accuracy: 0.8717 Epoch 32/100 71/71 [==============================] - 1s 15ms/step - loss: 0.2945 - accuracy: 0.9060 - val_loss: 0.4802 - val_accuracy: 0.8617 Epoch 33/100 71/71 [==============================] - 1s 15ms/step - loss: 0.2834 - accuracy: 0.9113 - val_loss: 0.4157 - val_accuracy: 0.8777 Epoch 34/100 71/71 [==============================] - 1s 15ms/step - loss: 0.2592 - accuracy: 0.9184 - val_loss: 0.5107 - val_accuracy: 0.8537 Epoch 35/100 71/71 [==============================] - 1s 15ms/step - loss: 0.2719 - accuracy: 0.9136 - val_loss: 0.4554 - val_accuracy: 0.8740 Epoch 36/100 71/71 [==============================] - 1s 15ms/step - loss: 0.2700 - accuracy: 0.9152 - val_loss: 0.4590 - val_accuracy: 0.8717 Epoch 37/100 71/71 [==============================] - 1s 15ms/step - loss: 0.2623 - accuracy: 0.9137 - val_loss: 0.3993 - val_accuracy: 0.8943 Epoch 38/100 71/71 [==============================] - 1s 15ms/step - loss: 0.2407 - accuracy: 0.9229 - val_loss: 0.3903 - val_accuracy: 0.8910 Epoch 39/100 71/71 [==============================] - 1s 15ms/step - loss: 0.2323 - accuracy: 0.9283 - val_loss: 0.5136 - val_accuracy: 0.8730 Epoch 40/100 71/71 [==============================] - 1s 15ms/step - loss: 0.2366 - accuracy: 0.9263 - val_loss: 0.4174 - val_accuracy: 0.8873 Epoch 41/100 71/71 [==============================] - 1s 15ms/step - loss: 0.2192 - accuracy: 0.9340 - val_loss: 0.3731 - val_accuracy: 0.8970 Epoch 42/100 71/71 [==============================] - 1s 15ms/step - loss: 0.2051 - accuracy: 0.9353 - val_loss: 0.3648 - val_accuracy: 0.9007 Epoch 43/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1897 - accuracy: 0.9406 - val_loss: 0.4068 - val_accuracy: 0.8887 Epoch 44/100 71/71 [==============================] - 1s 15ms/step - loss: 0.2089 - accuracy: 0.9346 - val_loss: 0.3983 - val_accuracy: 0.8923 Epoch 45/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1948 - accuracy: 0.9382 - val_loss: 0.3979 - val_accuracy: 0.8963 Epoch 46/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1870 - accuracy: 0.9413 - val_loss: 0.3782 - val_accuracy: 0.8997 Epoch 47/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1713 - accuracy: 0.9475 - val_loss: 0.3685 - val_accuracy: 0.9040 Epoch 48/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1750 - accuracy: 0.9458 - val_loss: 0.4434 - val_accuracy: 0.8883 Epoch 49/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1637 - accuracy: 0.9494 - val_loss: 0.3612 - val_accuracy: 0.9043 Epoch 50/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1478 - accuracy: 0.9548 - val_loss: 0.4553 - val_accuracy: 0.8897 Epoch 51/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1630 - accuracy: 0.9518 - val_loss: 0.3631 - val_accuracy: 0.9040 Epoch 52/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1412 - accuracy: 0.9564 - val_loss: 0.3898 - val_accuracy: 0.9000 Epoch 53/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1363 - accuracy: 0.9565 - val_loss: 0.4430 - val_accuracy: 0.8957 Epoch 54/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1803 - accuracy: 0.9473 - val_loss: 0.4092 - val_accuracy: 0.8967 Epoch 55/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1611 - accuracy: 0.9519 - val_loss: 0.3798 - val_accuracy: 0.9047 Epoch 56/100 71/71 [==============================] - 1s 16ms/step - loss: 0.1451 - accuracy: 0.9555 - val_loss: 0.3937 - val_accuracy: 0.9070 Epoch 57/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1648 - accuracy: 0.9492 - val_loss: 0.4529 - val_accuracy: 0.8943 Epoch 58/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1328 - accuracy: 0.9581 - val_loss: 0.3805 - val_accuracy: 0.9037 Epoch 59/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1521 - accuracy: 0.9545 - val_loss: 0.3689 - val_accuracy: 0.9047 Epoch 60/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1550 - accuracy: 0.9541 - val_loss: 0.4008 - val_accuracy: 0.9010 Epoch 61/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1275 - accuracy: 0.9580 - val_loss: 0.5111 - val_accuracy: 0.8853 Epoch 62/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1334 - accuracy: 0.9593 - val_loss: 0.3899 - val_accuracy: 0.9040 Epoch 63/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1152 - accuracy: 0.9630 - val_loss: 0.4216 - val_accuracy: 0.9007 Epoch 64/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1140 - accuracy: 0.9631 - val_loss: 0.4081 - val_accuracy: 0.9023 Epoch 65/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1489 - accuracy: 0.9528 - val_loss: 0.4129 - val_accuracy: 0.8973 Epoch 66/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1452 - accuracy: 0.9557 - val_loss: 0.3733 - val_accuracy: 0.9043 Epoch 67/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1046 - accuracy: 0.9671 - val_loss: 0.3906 - val_accuracy: 0.9077 Epoch 68/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0999 - accuracy: 0.9663 - val_loss: 0.3949 - val_accuracy: 0.9110 Epoch 69/100 71/71 [==============================] - 1s 16ms/step - loss: 0.1150 - accuracy: 0.9650 - val_loss: 0.4444 - val_accuracy: 0.9023 Epoch 70/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1004 - accuracy: 0.9713 - val_loss: 0.3984 - val_accuracy: 0.9070 Epoch 71/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1162 - accuracy: 0.9639 - val_loss: 0.5054 - val_accuracy: 0.8843 Epoch 72/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1191 - accuracy: 0.9626 - val_loss: 0.3756 - val_accuracy: 0.9117 Epoch 73/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0910 - accuracy: 0.9736 - val_loss: 0.3580 - val_accuracy: 0.9123 Epoch 74/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1035 - accuracy: 0.9667 - val_loss: 0.3596 - val_accuracy: 0.9140 Epoch 75/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0934 - accuracy: 0.9715 - val_loss: 0.4343 - val_accuracy: 0.9047 Epoch 76/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0833 - accuracy: 0.9740 - val_loss: 0.3879 - val_accuracy: 0.9087 Epoch 77/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1090 - accuracy: 0.9658 - val_loss: 0.3845 - val_accuracy: 0.9127 Epoch 78/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1116 - accuracy: 0.9667 - val_loss: 0.4193 - val_accuracy: 0.9050 Epoch 79/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0971 - accuracy: 0.9702 - val_loss: 0.3762 - val_accuracy: 0.9140 Epoch 80/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0973 - accuracy: 0.9704 - val_loss: 0.4096 - val_accuracy: 0.9090 Epoch 81/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1019 - accuracy: 0.9703 - val_loss: 0.4147 - val_accuracy: 0.9047 Epoch 82/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0874 - accuracy: 0.9729 - val_loss: 0.4471 - val_accuracy: 0.9067 Epoch 83/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0922 - accuracy: 0.9712 - val_loss: 0.5087 - val_accuracy: 0.8937 Epoch 84/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1060 - accuracy: 0.9678 - val_loss: 0.4026 - val_accuracy: 0.9090 Epoch 85/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0859 - accuracy: 0.9724 - val_loss: 0.4136 - val_accuracy: 0.9087 Epoch 86/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1023 - accuracy: 0.9690 - val_loss: 0.3992 - val_accuracy: 0.9120 Epoch 87/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0897 - accuracy: 0.9715 - val_loss: 0.3993 - val_accuracy: 0.9083 Epoch 88/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0861 - accuracy: 0.9749 - val_loss: 0.4269 - val_accuracy: 0.9017 Epoch 89/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0932 - accuracy: 0.9730 - val_loss: 0.4025 - val_accuracy: 0.9040 Epoch 90/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0827 - accuracy: 0.9752 - val_loss: 0.4416 - val_accuracy: 0.9083 Epoch 91/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0779 - accuracy: 0.9757 - val_loss: 0.4466 - val_accuracy: 0.9100 Epoch 92/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0694 - accuracy: 0.9781 - val_loss: 0.4052 - val_accuracy: 0.9097 Epoch 93/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0792 - accuracy: 0.9766 - val_loss: 0.4245 - val_accuracy: 0.9117 Epoch 94/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0977 - accuracy: 0.9706 - val_loss: 0.4776 - val_accuracy: 0.9040 Epoch 95/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0916 - accuracy: 0.9714 - val_loss: 0.4266 - val_accuracy: 0.9070 Epoch 96/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0858 - accuracy: 0.9737 - val_loss: 0.4047 - val_accuracy: 0.9140 Epoch 97/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0873 - accuracy: 0.9750 - val_loss: 0.3842 - val_accuracy: 0.9123 Epoch 98/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0805 - accuracy: 0.9774 - val_loss: 0.3853 - val_accuracy: 0.9120 Epoch 99/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1051 - accuracy: 0.9659 - val_loss: 0.4232 - val_accuracy: 0.9097 Epoch 100/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0933 - accuracy: 0.9734 - val_loss: 0.3822 - val_accuracy: 0.9137 94/94 [==============================] - 0s 3ms/step - loss: 0.3935 - accuracy: 0.9167 CNN Error: 8.33%
model.summary()
Model: "sequential_31"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
conv2d_88 (Conv2D) (None, 29, 29, 64) 640
conv2d_89 (Conv2D) (None, 27, 27, 64) 36928
max_pooling2d_80 (MaxPoolin (None, 13, 13, 64) 0
g2D)
dropout_80 (Dropout) (None, 13, 13, 64) 0
conv2d_90 (Conv2D) (None, 11, 11, 128) 73856
conv2d_91 (Conv2D) (None, 9, 9, 128) 147584
max_pooling2d_81 (MaxPoolin (None, 4, 4, 128) 0
g2D)
dropout_81 (Dropout) (None, 4, 4, 128) 0
flatten_25 (Flatten) (None, 2048) 0
dense_78 (Dense) (None, 256) 524544
dropout_82 (Dropout) (None, 256) 0
dense_79 (Dense) (None, 128) 32896
dropout_83 (Dropout) (None, 128) 0
dense_80 (Dense) (None, 15) 1935
=================================================================
Total params: 818,383
Trainable params: 818,383
Non-trainable params: 0
_________________________________________________________________
model = Sequential()
model.add(Conv2D(64, (3, 3), activation='relu',input_shape=(31,31,1)))
model.add(Conv2D(64, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.2))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.2))
model.add(Flatten())
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(128, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
model.load_weights("./CNN Weights (31 by 31)/model3.h5")
# Model 2
model = Sequential()
model.add(Conv2D(64, (3, 3), activation='relu',input_shape=(31,31,1)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(256, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(512, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
history = model.fit(X_train,y_train, validation_data=(X_val,y_val),epochs=100, batch_size=128)
scores = model.evaluate(X_test,y_test)
print("CNN Error: %.2f%%" % (100-scores[1]*100))
plotAUC(history)
Epoch 1/100 71/71 [==============================] - 2s 13ms/step - loss: 2.6077 - accuracy: 0.1030 - val_loss: 2.6207 - val_accuracy: 0.1020 Epoch 2/100 71/71 [==============================] - 1s 10ms/step - loss: 2.4655 - accuracy: 0.1477 - val_loss: 2.4488 - val_accuracy: 0.1523 Epoch 3/100 71/71 [==============================] - 1s 11ms/step - loss: 2.2717 - accuracy: 0.2200 - val_loss: 2.1590 - val_accuracy: 0.3030 Epoch 4/100 71/71 [==============================] - 1s 10ms/step - loss: 2.0455 - accuracy: 0.3140 - val_loss: 1.8235 - val_accuracy: 0.4113 Epoch 5/100 71/71 [==============================] - 1s 10ms/step - loss: 1.7305 - accuracy: 0.4309 - val_loss: 1.5823 - val_accuracy: 0.4700 Epoch 6/100 71/71 [==============================] - 1s 10ms/step - loss: 1.4929 - accuracy: 0.5078 - val_loss: 1.3519 - val_accuracy: 0.5540 Epoch 7/100 71/71 [==============================] - 1s 10ms/step - loss: 1.3897 - accuracy: 0.5474 - val_loss: 1.2367 - val_accuracy: 0.5913 Epoch 8/100 71/71 [==============================] - 1s 10ms/step - loss: 1.2234 - accuracy: 0.6050 - val_loss: 1.0181 - val_accuracy: 0.6790 Epoch 9/100 71/71 [==============================] - 1s 10ms/step - loss: 1.0624 - accuracy: 0.6552 - val_loss: 0.9355 - val_accuracy: 0.7030 Epoch 10/100 71/71 [==============================] - 1s 10ms/step - loss: 0.9465 - accuracy: 0.6938 - val_loss: 0.8496 - val_accuracy: 0.7283 Epoch 11/100 71/71 [==============================] - 1s 10ms/step - loss: 0.8823 - accuracy: 0.7160 - val_loss: 0.7990 - val_accuracy: 0.7460 Epoch 12/100 71/71 [==============================] - 1s 10ms/step - loss: 0.8337 - accuracy: 0.7308 - val_loss: 0.6888 - val_accuracy: 0.7770 Epoch 13/100 71/71 [==============================] - 1s 10ms/step - loss: 0.7296 - accuracy: 0.7656 - val_loss: 0.7154 - val_accuracy: 0.7737 Epoch 14/100 71/71 [==============================] - 1s 10ms/step - loss: 0.6901 - accuracy: 0.7841 - val_loss: 0.5451 - val_accuracy: 0.8357 Epoch 15/100 71/71 [==============================] - 1s 10ms/step - loss: 0.6279 - accuracy: 0.8016 - val_loss: 0.5843 - val_accuracy: 0.8150 Epoch 16/100 71/71 [==============================] - 1s 10ms/step - loss: 0.6000 - accuracy: 0.8059 - val_loss: 0.4731 - val_accuracy: 0.8470 Epoch 17/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5383 - accuracy: 0.8305 - val_loss: 0.6256 - val_accuracy: 0.7963 Epoch 18/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5261 - accuracy: 0.8296 - val_loss: 0.4845 - val_accuracy: 0.8513 Epoch 19/100 71/71 [==============================] - 1s 10ms/step - loss: 0.4794 - accuracy: 0.8508 - val_loss: 0.4187 - val_accuracy: 0.8677 Epoch 20/100 71/71 [==============================] - 1s 10ms/step - loss: 0.4101 - accuracy: 0.8662 - val_loss: 0.3861 - val_accuracy: 0.8767 Epoch 21/100 71/71 [==============================] - 1s 10ms/step - loss: 0.4014 - accuracy: 0.8745 - val_loss: 0.3463 - val_accuracy: 0.8970 Epoch 22/100 71/71 [==============================] - 1s 10ms/step - loss: 0.3905 - accuracy: 0.8755 - val_loss: 0.3720 - val_accuracy: 0.8850 Epoch 23/100 71/71 [==============================] - 1s 10ms/step - loss: 0.3666 - accuracy: 0.8814 - val_loss: 0.3336 - val_accuracy: 0.8997 Epoch 24/100 71/71 [==============================] - 1s 10ms/step - loss: 0.3136 - accuracy: 0.8986 - val_loss: 0.3082 - val_accuracy: 0.9060 Epoch 25/100 71/71 [==============================] - 1s 10ms/step - loss: 0.3244 - accuracy: 0.8975 - val_loss: 0.2836 - val_accuracy: 0.9153 Epoch 26/100 71/71 [==============================] - 1s 10ms/step - loss: 0.3004 - accuracy: 0.9022 - val_loss: 0.3079 - val_accuracy: 0.9107 Epoch 27/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2974 - accuracy: 0.9067 - val_loss: 0.3275 - val_accuracy: 0.9037 Epoch 28/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2805 - accuracy: 0.9092 - val_loss: 0.3728 - val_accuracy: 0.8897 Epoch 29/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2601 - accuracy: 0.9166 - val_loss: 0.2895 - val_accuracy: 0.9180 Epoch 30/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2577 - accuracy: 0.9175 - val_loss: 0.2829 - val_accuracy: 0.9177 Epoch 31/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2324 - accuracy: 0.9228 - val_loss: 0.2917 - val_accuracy: 0.9160 Epoch 32/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2581 - accuracy: 0.9159 - val_loss: 0.2936 - val_accuracy: 0.9133 Epoch 33/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2265 - accuracy: 0.9286 - val_loss: 0.2670 - val_accuracy: 0.9240 Epoch 34/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2103 - accuracy: 0.9307 - val_loss: 0.2928 - val_accuracy: 0.9137 Epoch 35/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2209 - accuracy: 0.9284 - val_loss: 0.2996 - val_accuracy: 0.9137 Epoch 36/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2019 - accuracy: 0.9309 - val_loss: 0.2907 - val_accuracy: 0.9133 Epoch 37/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1947 - accuracy: 0.9383 - val_loss: 0.4029 - val_accuracy: 0.8793 Epoch 38/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1994 - accuracy: 0.9312 - val_loss: 0.2620 - val_accuracy: 0.9270 Epoch 39/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1752 - accuracy: 0.9415 - val_loss: 0.2648 - val_accuracy: 0.9253 Epoch 40/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1747 - accuracy: 0.9441 - val_loss: 0.3142 - val_accuracy: 0.9147 Epoch 41/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1756 - accuracy: 0.9456 - val_loss: 0.2399 - val_accuracy: 0.9317 Epoch 42/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1566 - accuracy: 0.9498 - val_loss: 0.2370 - val_accuracy: 0.9400 Epoch 43/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1491 - accuracy: 0.9524 - val_loss: 0.2519 - val_accuracy: 0.9320 Epoch 44/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1610 - accuracy: 0.9489 - val_loss: 0.2484 - val_accuracy: 0.9327 Epoch 45/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1691 - accuracy: 0.9459 - val_loss: 0.2309 - val_accuracy: 0.9350 Epoch 46/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1585 - accuracy: 0.9516 - val_loss: 0.2401 - val_accuracy: 0.9327 Epoch 47/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1473 - accuracy: 0.9530 - val_loss: 0.2510 - val_accuracy: 0.9273 Epoch 48/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1443 - accuracy: 0.9535 - val_loss: 0.2587 - val_accuracy: 0.9297 Epoch 49/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1192 - accuracy: 0.9617 - val_loss: 0.2320 - val_accuracy: 0.9330 Epoch 50/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1318 - accuracy: 0.9589 - val_loss: 0.2403 - val_accuracy: 0.9343 Epoch 51/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1227 - accuracy: 0.9627 - val_loss: 0.2476 - val_accuracy: 0.9330 Epoch 52/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1220 - accuracy: 0.9623 - val_loss: 0.2404 - val_accuracy: 0.9353 Epoch 53/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1259 - accuracy: 0.9598 - val_loss: 0.2328 - val_accuracy: 0.9363 Epoch 54/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1314 - accuracy: 0.9576 - val_loss: 0.2491 - val_accuracy: 0.9337 Epoch 55/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1159 - accuracy: 0.9626 - val_loss: 0.2466 - val_accuracy: 0.9343 Epoch 56/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1013 - accuracy: 0.9678 - val_loss: 0.2299 - val_accuracy: 0.9423 Epoch 57/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1218 - accuracy: 0.9609 - val_loss: 0.2416 - val_accuracy: 0.9357 Epoch 58/100 71/71 [==============================] - 1s 9ms/step - loss: 0.1337 - accuracy: 0.9577 - val_loss: 0.2158 - val_accuracy: 0.9433 Epoch 59/100 71/71 [==============================] - 1s 9ms/step - loss: 0.1040 - accuracy: 0.9652 - val_loss: 0.2482 - val_accuracy: 0.9360 Epoch 60/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1220 - accuracy: 0.9618 - val_loss: 0.2854 - val_accuracy: 0.9290 Epoch 61/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1101 - accuracy: 0.9669 - val_loss: 0.2423 - val_accuracy: 0.9337 Epoch 62/100 71/71 [==============================] - 1s 9ms/step - loss: 0.1225 - accuracy: 0.9596 - val_loss: 0.2327 - val_accuracy: 0.9413 Epoch 63/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1113 - accuracy: 0.9641 - val_loss: 0.2439 - val_accuracy: 0.9393 Epoch 64/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0981 - accuracy: 0.9700 - val_loss: 0.2430 - val_accuracy: 0.9373 Epoch 65/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0990 - accuracy: 0.9672 - val_loss: 0.2532 - val_accuracy: 0.9383 Epoch 66/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0990 - accuracy: 0.9692 - val_loss: 0.2345 - val_accuracy: 0.9437 Epoch 67/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1002 - accuracy: 0.9665 - val_loss: 0.2428 - val_accuracy: 0.9350 Epoch 68/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1142 - accuracy: 0.9639 - val_loss: 0.2401 - val_accuracy: 0.9400 Epoch 69/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0957 - accuracy: 0.9709 - val_loss: 0.2586 - val_accuracy: 0.9367 Epoch 70/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1076 - accuracy: 0.9665 - val_loss: 0.2421 - val_accuracy: 0.9403 Epoch 71/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0814 - accuracy: 0.9739 - val_loss: 0.2535 - val_accuracy: 0.9387 Epoch 72/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0918 - accuracy: 0.9712 - val_loss: 0.3083 - val_accuracy: 0.9247 Epoch 73/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0950 - accuracy: 0.9693 - val_loss: 0.2460 - val_accuracy: 0.9370 Epoch 74/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0942 - accuracy: 0.9719 - val_loss: 0.2840 - val_accuracy: 0.9293 Epoch 75/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1098 - accuracy: 0.9664 - val_loss: 0.2606 - val_accuracy: 0.9323 Epoch 76/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1005 - accuracy: 0.9691 - val_loss: 0.3088 - val_accuracy: 0.9223 Epoch 77/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0974 - accuracy: 0.9673 - val_loss: 0.2843 - val_accuracy: 0.9297 Epoch 78/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1003 - accuracy: 0.9690 - val_loss: 0.2260 - val_accuracy: 0.9373 Epoch 79/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0785 - accuracy: 0.9737 - val_loss: 0.2218 - val_accuracy: 0.9457 Epoch 80/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0979 - accuracy: 0.9671 - val_loss: 0.2438 - val_accuracy: 0.9407 Epoch 81/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0932 - accuracy: 0.9699 - val_loss: 0.2191 - val_accuracy: 0.9450 Epoch 82/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0738 - accuracy: 0.9770 - val_loss: 0.2451 - val_accuracy: 0.9397 Epoch 83/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0801 - accuracy: 0.9724 - val_loss: 0.2394 - val_accuracy: 0.9407 Epoch 84/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0847 - accuracy: 0.9723 - val_loss: 0.2454 - val_accuracy: 0.9393 Epoch 85/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0865 - accuracy: 0.9725 - val_loss: 0.2355 - val_accuracy: 0.9443 Epoch 86/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0899 - accuracy: 0.9737 - val_loss: 0.2358 - val_accuracy: 0.9407 Epoch 87/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0892 - accuracy: 0.9709 - val_loss: 0.2603 - val_accuracy: 0.9380 Epoch 88/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0841 - accuracy: 0.9740 - val_loss: 0.2151 - val_accuracy: 0.9487 Epoch 89/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0710 - accuracy: 0.9774 - val_loss: 0.2425 - val_accuracy: 0.9420 Epoch 90/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0891 - accuracy: 0.9736 - val_loss: 0.2209 - val_accuracy: 0.9473 Epoch 91/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0721 - accuracy: 0.9755 - val_loss: 0.2409 - val_accuracy: 0.9433 Epoch 92/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0702 - accuracy: 0.9792 - val_loss: 0.2222 - val_accuracy: 0.9467 Epoch 93/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0685 - accuracy: 0.9787 - val_loss: 0.2145 - val_accuracy: 0.9503 Epoch 94/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0690 - accuracy: 0.9788 - val_loss: 0.2223 - val_accuracy: 0.9450 Epoch 95/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0648 - accuracy: 0.9801 - val_loss: 0.2287 - val_accuracy: 0.9450 Epoch 96/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0754 - accuracy: 0.9767 - val_loss: 0.2414 - val_accuracy: 0.9407 Epoch 97/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0691 - accuracy: 0.9775 - val_loss: 0.2912 - val_accuracy: 0.9347 Epoch 98/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0825 - accuracy: 0.9764 - val_loss: 0.2437 - val_accuracy: 0.9397 Epoch 99/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0797 - accuracy: 0.9747 - val_loss: 0.2382 - val_accuracy: 0.9443 Epoch 100/100 71/71 [==============================] - 1s 9ms/step - loss: 0.0844 - accuracy: 0.9751 - val_loss: 0.2353 - val_accuracy: 0.9397 94/94 [==============================] - 0s 3ms/step - loss: 0.2441 - accuracy: 0.9400 CNN Error: 6.00%
# Model 2
model = Sequential()
model.add(RandomFlip('horizontal',input_shape=(31,31,1)))
model.add(Conv2D(64, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(256, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(512, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
history = model.fit(X_train,y_train, validation_data=(X_val,y_val),epochs=100, batch_size=128)
scores = model.evaluate(X_test,y_test)
print("CNN Error: %.2f%%" % (100-scores[1]*100))
plotAUC(history)
Epoch 1/100 71/71 [==============================] - 4s 41ms/step - loss: 2.6033 - accuracy: 0.1029 - val_loss: 2.6752 - val_accuracy: 0.0870 Epoch 2/100 71/71 [==============================] - 3s 45ms/step - loss: 2.4957 - accuracy: 0.1320 - val_loss: 2.4555 - val_accuracy: 0.1507 Epoch 3/100 71/71 [==============================] - 3s 46ms/step - loss: 2.2966 - accuracy: 0.2080 - val_loss: 2.1820 - val_accuracy: 0.2750 Epoch 4/100 71/71 [==============================] - 3s 46ms/step - loss: 2.0103 - accuracy: 0.3294 - val_loss: 1.9075 - val_accuracy: 0.3607 Epoch 5/100 71/71 [==============================] - 3s 47ms/step - loss: 1.7545 - accuracy: 0.4178 - val_loss: 1.5676 - val_accuracy: 0.4917 Epoch 6/100 71/71 [==============================] - 3s 47ms/step - loss: 1.5161 - accuracy: 0.4994 - val_loss: 1.3387 - val_accuracy: 0.5650 Epoch 7/100 71/71 [==============================] - 3s 46ms/step - loss: 1.3109 - accuracy: 0.5682 - val_loss: 1.0984 - val_accuracy: 0.6510 Epoch 8/100 71/71 [==============================] - 3s 49ms/step - loss: 1.1930 - accuracy: 0.6092 - val_loss: 1.0017 - val_accuracy: 0.6813 Epoch 9/100 71/71 [==============================] - 3s 49ms/step - loss: 1.0467 - accuracy: 0.6595 - val_loss: 0.9193 - val_accuracy: 0.7117 Epoch 10/100 71/71 [==============================] - 3s 49ms/step - loss: 0.9416 - accuracy: 0.6897 - val_loss: 0.7507 - val_accuracy: 0.7627 Epoch 11/100 71/71 [==============================] - 4s 50ms/step - loss: 0.8692 - accuracy: 0.7200 - val_loss: 0.6977 - val_accuracy: 0.7763 Epoch 12/100 71/71 [==============================] - 4s 49ms/step - loss: 0.7742 - accuracy: 0.7487 - val_loss: 0.6528 - val_accuracy: 0.7930 Epoch 13/100 71/71 [==============================] - 3s 48ms/step - loss: 0.7543 - accuracy: 0.7535 - val_loss: 0.6301 - val_accuracy: 0.8010 Epoch 14/100 71/71 [==============================] - 3s 48ms/step - loss: 0.6631 - accuracy: 0.7819 - val_loss: 0.5595 - val_accuracy: 0.8223 Epoch 15/100 71/71 [==============================] - 3s 48ms/step - loss: 0.6117 - accuracy: 0.7977 - val_loss: 0.5016 - val_accuracy: 0.8340 Epoch 16/100 71/71 [==============================] - 4s 50ms/step - loss: 0.5534 - accuracy: 0.8218 - val_loss: 0.4889 - val_accuracy: 0.8427 Epoch 17/100 71/71 [==============================] - 3s 46ms/step - loss: 0.5045 - accuracy: 0.8377 - val_loss: 0.4345 - val_accuracy: 0.8563 Epoch 18/100 71/71 [==============================] - 3s 45ms/step - loss: 0.4992 - accuracy: 0.8372 - val_loss: 0.5062 - val_accuracy: 0.8453 Epoch 19/100 71/71 [==============================] - 3s 47ms/step - loss: 0.4610 - accuracy: 0.8507 - val_loss: 0.3746 - val_accuracy: 0.8790 Epoch 20/100 71/71 [==============================] - 3s 46ms/step - loss: 0.4267 - accuracy: 0.8601 - val_loss: 0.3862 - val_accuracy: 0.8763 Epoch 21/100 71/71 [==============================] - 3s 48ms/step - loss: 0.4060 - accuracy: 0.8712 - val_loss: 0.3949 - val_accuracy: 0.8757 Epoch 22/100 71/71 [==============================] - 3s 49ms/step - loss: 0.3836 - accuracy: 0.8774 - val_loss: 0.3391 - val_accuracy: 0.8933 Epoch 23/100 71/71 [==============================] - 3s 48ms/step - loss: 0.3425 - accuracy: 0.8886 - val_loss: 0.3199 - val_accuracy: 0.8983 Epoch 24/100 71/71 [==============================] - 3s 47ms/step - loss: 0.3293 - accuracy: 0.8955 - val_loss: 0.3549 - val_accuracy: 0.8840 Epoch 25/100 71/71 [==============================] - 3s 48ms/step - loss: 0.3320 - accuracy: 0.8923 - val_loss: 0.3171 - val_accuracy: 0.9003 Epoch 26/100 71/71 [==============================] - 3s 47ms/step - loss: 0.2945 - accuracy: 0.9049 - val_loss: 0.3114 - val_accuracy: 0.9020 Epoch 27/100 71/71 [==============================] - 3s 46ms/step - loss: 0.3203 - accuracy: 0.8953 - val_loss: 0.3221 - val_accuracy: 0.8967 Epoch 28/100 71/71 [==============================] - 3s 47ms/step - loss: 0.2619 - accuracy: 0.9218 - val_loss: 0.3191 - val_accuracy: 0.9030 Epoch 29/100 71/71 [==============================] - 3s 49ms/step - loss: 0.2777 - accuracy: 0.9116 - val_loss: 0.2833 - val_accuracy: 0.9113 Epoch 30/100 71/71 [==============================] - 4s 50ms/step - loss: 0.2547 - accuracy: 0.9195 - val_loss: 0.2825 - val_accuracy: 0.9190 Epoch 31/100 71/71 [==============================] - 3s 48ms/step - loss: 0.2389 - accuracy: 0.9214 - val_loss: 0.3154 - val_accuracy: 0.9010 Epoch 32/100 71/71 [==============================] - 3s 48ms/step - loss: 0.2285 - accuracy: 0.9207 - val_loss: 0.2902 - val_accuracy: 0.9127 Epoch 33/100 71/71 [==============================] - 3s 49ms/step - loss: 0.2176 - accuracy: 0.9277 - val_loss: 0.3155 - val_accuracy: 0.9000 Epoch 34/100 71/71 [==============================] - 3s 49ms/step - loss: 0.2282 - accuracy: 0.9270 - val_loss: 0.2755 - val_accuracy: 0.9200 Epoch 35/100 71/71 [==============================] - 3s 49ms/step - loss: 0.2193 - accuracy: 0.9286 - val_loss: 0.2810 - val_accuracy: 0.9167 Epoch 36/100 71/71 [==============================] - 4s 50ms/step - loss: 0.2052 - accuracy: 0.9349 - val_loss: 0.2727 - val_accuracy: 0.9177 Epoch 37/100 71/71 [==============================] - 3s 49ms/step - loss: 0.1849 - accuracy: 0.9431 - val_loss: 0.2735 - val_accuracy: 0.9210 Epoch 38/100 71/71 [==============================] - 3s 48ms/step - loss: 0.2197 - accuracy: 0.9318 - val_loss: 0.2557 - val_accuracy: 0.9237 Epoch 39/100 71/71 [==============================] - 3s 48ms/step - loss: 0.1844 - accuracy: 0.9425 - val_loss: 0.2340 - val_accuracy: 0.9310 Epoch 40/100 71/71 [==============================] - 3s 49ms/step - loss: 0.1623 - accuracy: 0.9476 - val_loss: 0.2350 - val_accuracy: 0.9330 Epoch 41/100 71/71 [==============================] - 3s 48ms/step - loss: 0.1785 - accuracy: 0.9433 - val_loss: 0.2318 - val_accuracy: 0.9313 Epoch 42/100 71/71 [==============================] - 3s 49ms/step - loss: 0.1557 - accuracy: 0.9475 - val_loss: 0.2407 - val_accuracy: 0.9297 Epoch 43/100 71/71 [==============================] - 3s 49ms/step - loss: 0.1615 - accuracy: 0.9458 - val_loss: 0.2277 - val_accuracy: 0.9333 Epoch 44/100 71/71 [==============================] - 3s 48ms/step - loss: 0.1629 - accuracy: 0.9459 - val_loss: 0.2423 - val_accuracy: 0.9307 Epoch 45/100 71/71 [==============================] - 3s 49ms/step - loss: 0.1471 - accuracy: 0.9506 - val_loss: 0.2445 - val_accuracy: 0.9287 Epoch 46/100 71/71 [==============================] - 4s 50ms/step - loss: 0.1419 - accuracy: 0.9541 - val_loss: 0.2518 - val_accuracy: 0.9277 Epoch 47/100 71/71 [==============================] - 3s 49ms/step - loss: 0.1341 - accuracy: 0.9586 - val_loss: 0.2438 - val_accuracy: 0.9313 Epoch 48/100 71/71 [==============================] - 3s 45ms/step - loss: 0.1534 - accuracy: 0.9509 - val_loss: 0.2709 - val_accuracy: 0.9233 Epoch 49/100 71/71 [==============================] - 3s 49ms/step - loss: 0.1355 - accuracy: 0.9569 - val_loss: 0.2715 - val_accuracy: 0.9273 Epoch 50/100 71/71 [==============================] - 3s 49ms/step - loss: 0.1416 - accuracy: 0.9546 - val_loss: 0.2603 - val_accuracy: 0.9277 Epoch 51/100 71/71 [==============================] - 4s 50ms/step - loss: 0.1426 - accuracy: 0.9549 - val_loss: 0.2164 - val_accuracy: 0.9377 Epoch 52/100 71/71 [==============================] - 4s 50ms/step - loss: 0.1443 - accuracy: 0.9528 - val_loss: 0.2268 - val_accuracy: 0.9333 Epoch 53/100 71/71 [==============================] - 4s 50ms/step - loss: 0.1447 - accuracy: 0.9530 - val_loss: 0.2345 - val_accuracy: 0.9330 Epoch 54/100 71/71 [==============================] - 3s 48ms/step - loss: 0.1326 - accuracy: 0.9585 - val_loss: 0.2586 - val_accuracy: 0.9243 Epoch 55/100 71/71 [==============================] - 3s 49ms/step - loss: 0.1534 - accuracy: 0.9510 - val_loss: 0.2426 - val_accuracy: 0.9287 Epoch 56/100 71/71 [==============================] - 3s 47ms/step - loss: 0.1092 - accuracy: 0.9672 - val_loss: 0.2164 - val_accuracy: 0.9373 Epoch 57/100 71/71 [==============================] - 3s 49ms/step - loss: 0.1065 - accuracy: 0.9670 - val_loss: 0.3004 - val_accuracy: 0.9193 Epoch 58/100 71/71 [==============================] - 3s 48ms/step - loss: 0.1349 - accuracy: 0.9580 - val_loss: 0.2574 - val_accuracy: 0.9260 Epoch 59/100 71/71 [==============================] - 3s 45ms/step - loss: 0.1187 - accuracy: 0.9599 - val_loss: 0.2519 - val_accuracy: 0.9320 Epoch 60/100 71/71 [==============================] - 3s 48ms/step - loss: 0.1119 - accuracy: 0.9628 - val_loss: 0.2300 - val_accuracy: 0.9373 Epoch 61/100 71/71 [==============================] - 4s 49ms/step - loss: 0.1185 - accuracy: 0.9613 - val_loss: 0.2334 - val_accuracy: 0.9397 Epoch 62/100 71/71 [==============================] - 4s 52ms/step - loss: 0.1127 - accuracy: 0.9633 - val_loss: 0.2631 - val_accuracy: 0.9260 Epoch 63/100 71/71 [==============================] - 3s 47ms/step - loss: 0.1249 - accuracy: 0.9611 - val_loss: 0.2314 - val_accuracy: 0.9320 Epoch 64/100 71/71 [==============================] - 3s 48ms/step - loss: 0.1115 - accuracy: 0.9656 - val_loss: 0.2572 - val_accuracy: 0.9360 Epoch 65/100 71/71 [==============================] - 3s 46ms/step - loss: 0.0981 - accuracy: 0.9709 - val_loss: 0.2389 - val_accuracy: 0.9347 Epoch 66/100 71/71 [==============================] - 3s 46ms/step - loss: 0.0959 - accuracy: 0.9702 - val_loss: 0.2595 - val_accuracy: 0.9307 Epoch 67/100 71/71 [==============================] - 4s 50ms/step - loss: 0.1119 - accuracy: 0.9633 - val_loss: 0.2427 - val_accuracy: 0.9353 Epoch 68/100 71/71 [==============================] - 3s 44ms/step - loss: 0.0899 - accuracy: 0.9698 - val_loss: 0.2330 - val_accuracy: 0.9387 Epoch 69/100 71/71 [==============================] - 3s 47ms/step - loss: 0.0986 - accuracy: 0.9713 - val_loss: 0.2476 - val_accuracy: 0.9347 Epoch 70/100 71/71 [==============================] - 3s 46ms/step - loss: 0.1106 - accuracy: 0.9643 - val_loss: 0.2732 - val_accuracy: 0.9287 Epoch 71/100 71/71 [==============================] - 3s 48ms/step - loss: 0.1005 - accuracy: 0.9685 - val_loss: 0.2280 - val_accuracy: 0.9400 Epoch 72/100 71/71 [==============================] - 4s 50ms/step - loss: 0.0977 - accuracy: 0.9702 - val_loss: 0.2680 - val_accuracy: 0.9300 Epoch 73/100 71/71 [==============================] - 4s 49ms/step - loss: 0.0810 - accuracy: 0.9735 - val_loss: 0.2409 - val_accuracy: 0.9370 Epoch 74/100 71/71 [==============================] - 3s 48ms/step - loss: 0.0847 - accuracy: 0.9728 - val_loss: 0.2330 - val_accuracy: 0.9383 Epoch 75/100 71/71 [==============================] - 4s 52ms/step - loss: 0.1138 - accuracy: 0.9648 - val_loss: 0.2690 - val_accuracy: 0.9280 Epoch 76/100 71/71 [==============================] - 3s 47ms/step - loss: 0.0936 - accuracy: 0.9709 - val_loss: 0.2330 - val_accuracy: 0.9343 Epoch 77/100 71/71 [==============================] - 3s 49ms/step - loss: 0.1065 - accuracy: 0.9682 - val_loss: 0.2463 - val_accuracy: 0.9317 Epoch 78/100 71/71 [==============================] - 4s 49ms/step - loss: 0.1035 - accuracy: 0.9678 - val_loss: 0.3069 - val_accuracy: 0.9190 Epoch 79/100 71/71 [==============================] - 3s 48ms/step - loss: 0.0911 - accuracy: 0.9699 - val_loss: 0.2270 - val_accuracy: 0.9373 Epoch 80/100 71/71 [==============================] - 3s 49ms/step - loss: 0.0910 - accuracy: 0.9709 - val_loss: 0.2317 - val_accuracy: 0.9373 Epoch 81/100 71/71 [==============================] - 4s 53ms/step - loss: 0.1043 - accuracy: 0.9687 - val_loss: 0.2465 - val_accuracy: 0.9397 Epoch 82/100 71/71 [==============================] - 4s 50ms/step - loss: 0.0827 - accuracy: 0.9720 - val_loss: 0.3077 - val_accuracy: 0.9220 Epoch 83/100 71/71 [==============================] - 3s 49ms/step - loss: 0.1189 - accuracy: 0.9627 - val_loss: 0.2278 - val_accuracy: 0.9393 Epoch 84/100 71/71 [==============================] - 4s 52ms/step - loss: 0.0812 - accuracy: 0.9749 - val_loss: 0.2772 - val_accuracy: 0.9247 Epoch 85/100 71/71 [==============================] - 4s 50ms/step - loss: 0.0800 - accuracy: 0.9741 - val_loss: 0.2210 - val_accuracy: 0.9447 Epoch 86/100 71/71 [==============================] - 4s 50ms/step - loss: 0.0811 - accuracy: 0.9718 - val_loss: 0.2344 - val_accuracy: 0.9407 Epoch 87/100 71/71 [==============================] - 3s 49ms/step - loss: 0.0790 - accuracy: 0.9752 - val_loss: 0.2496 - val_accuracy: 0.9323 Epoch 88/100 71/71 [==============================] - 3s 48ms/step - loss: 0.0872 - accuracy: 0.9741 - val_loss: 0.2222 - val_accuracy: 0.9433 Epoch 89/100 71/71 [==============================] - 3s 48ms/step - loss: 0.0771 - accuracy: 0.9756 - val_loss: 0.2366 - val_accuracy: 0.9363 Epoch 90/100 71/71 [==============================] - 3s 46ms/step - loss: 0.0923 - accuracy: 0.9713 - val_loss: 0.2462 - val_accuracy: 0.9347 Epoch 91/100 71/71 [==============================] - 3s 44ms/step - loss: 0.0814 - accuracy: 0.9752 - val_loss: 0.2297 - val_accuracy: 0.9370 Epoch 92/100 71/71 [==============================] - 3s 45ms/step - loss: 0.0677 - accuracy: 0.9778 - val_loss: 0.2577 - val_accuracy: 0.9400 Epoch 93/100 71/71 [==============================] - 3s 42ms/step - loss: 0.0788 - accuracy: 0.9756 - val_loss: 0.2364 - val_accuracy: 0.9430 Epoch 94/100 71/71 [==============================] - 3s 43ms/step - loss: 0.0729 - accuracy: 0.9776 - val_loss: 0.2413 - val_accuracy: 0.9400 Epoch 95/100 71/71 [==============================] - 3s 42ms/step - loss: 0.0720 - accuracy: 0.9761 - val_loss: 0.2514 - val_accuracy: 0.9370 Epoch 96/100 71/71 [==============================] - 3s 43ms/step - loss: 0.0945 - accuracy: 0.9695 - val_loss: 0.2382 - val_accuracy: 0.9400 Epoch 97/100 71/71 [==============================] - 3s 42ms/step - loss: 0.0695 - accuracy: 0.9783 - val_loss: 0.2373 - val_accuracy: 0.9410 Epoch 98/100 71/71 [==============================] - 3s 47ms/step - loss: 0.0655 - accuracy: 0.9807 - val_loss: 0.2303 - val_accuracy: 0.9447 Epoch 99/100 71/71 [==============================] - 3s 49ms/step - loss: 0.0677 - accuracy: 0.9794 - val_loss: 0.2345 - val_accuracy: 0.9453 Epoch 100/100 71/71 [==============================] - 3s 47ms/step - loss: 0.0582 - accuracy: 0.9821 - val_loss: 0.2358 - val_accuracy: 0.9413 94/94 [==============================] - 0s 4ms/step - loss: 0.2274 - accuracy: 0.9417 CNN Error: 5.83%
# Model 2
from tensorflow.keras.layers.experimental.preprocessing import Rescaling,RandomFlip
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense
from tensorflow.keras.layers import Dropout
from tensorflow.keras.layers import Flatten
from tensorflow.keras.layers import Conv2D
from tensorflow.keras.layers import MaxPooling2D,GlobalAveragePooling2D,GaussianNoise
from tensorflow.keras.utils import to_categorical
from tensorflow.keras.layers import Conv2D, BatchNormalization
from tensorflow.keras import regularizers
model = Sequential()
model.add(GaussianNoise(0.2,input_shape=(31,31,1)))
model.add(Conv2D(64, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(256, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(512, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
history = model.fit(X_train,y_train, validation_data=(X_val,y_val),epochs=100, batch_size=128)
scores = model.evaluate(X_test,y_test)
print("CNN Error: %.2f%%" % (100-scores[1]*100))
plotAUC(history)
Epoch 1/100 71/71 [==============================] - 2s 15ms/step - loss: 2.6499 - accuracy: 0.0953 - val_loss: 2.7074 - val_accuracy: 0.0677 Epoch 2/100 71/71 [==============================] - 1s 10ms/step - loss: 2.5694 - accuracy: 0.1253 - val_loss: 2.6990 - val_accuracy: 0.1160 Epoch 3/100 71/71 [==============================] - 1s 10ms/step - loss: 2.4079 - accuracy: 0.2069 - val_loss: 2.6327 - val_accuracy: 0.1360 Epoch 4/100 71/71 [==============================] - 1s 11ms/step - loss: 2.2392 - accuracy: 0.2573 - val_loss: 2.5746 - val_accuracy: 0.1703 Epoch 5/100 71/71 [==============================] - 1s 11ms/step - loss: 2.1382 - accuracy: 0.2995 - val_loss: 2.5190 - val_accuracy: 0.2170 Epoch 6/100 71/71 [==============================] - 1s 10ms/step - loss: 2.0552 - accuracy: 0.3291 - val_loss: 2.4883 - val_accuracy: 0.2187 Epoch 7/100 71/71 [==============================] - 1s 11ms/step - loss: 2.0008 - accuracy: 0.3499 - val_loss: 2.5492 - val_accuracy: 0.1940 Epoch 8/100 71/71 [==============================] - 1s 10ms/step - loss: 1.8968 - accuracy: 0.3859 - val_loss: 2.4593 - val_accuracy: 0.2320 Epoch 9/100 71/71 [==============================] - 1s 11ms/step - loss: 1.8607 - accuracy: 0.4011 - val_loss: 2.5079 - val_accuracy: 0.2173 Epoch 10/100 71/71 [==============================] - 1s 10ms/step - loss: 1.7519 - accuracy: 0.4373 - val_loss: 2.5640 - val_accuracy: 0.2073 Epoch 11/100 71/71 [==============================] - 1s 10ms/step - loss: 1.6703 - accuracy: 0.4569 - val_loss: 2.6074 - val_accuracy: 0.1883 Epoch 12/100 71/71 [==============================] - 1s 10ms/step - loss: 1.6186 - accuracy: 0.4824 - val_loss: 2.5448 - val_accuracy: 0.2210 Epoch 13/100 71/71 [==============================] - 1s 10ms/step - loss: 1.5696 - accuracy: 0.5012 - val_loss: 2.3759 - val_accuracy: 0.2513 Epoch 14/100 71/71 [==============================] - 1s 11ms/step - loss: 1.4736 - accuracy: 0.5248 - val_loss: 2.6152 - val_accuracy: 0.2127 Epoch 15/100 71/71 [==============================] - 1s 10ms/step - loss: 1.4122 - accuracy: 0.5493 - val_loss: 2.3917 - val_accuracy: 0.2750 Epoch 16/100 71/71 [==============================] - 1s 11ms/step - loss: 1.3710 - accuracy: 0.5606 - val_loss: 2.3915 - val_accuracy: 0.3000 Epoch 17/100 71/71 [==============================] - 1s 11ms/step - loss: 1.3222 - accuracy: 0.5764 - val_loss: 2.4341 - val_accuracy: 0.2723 Epoch 18/100 71/71 [==============================] - 1s 10ms/step - loss: 1.2772 - accuracy: 0.5898 - val_loss: 2.4113 - val_accuracy: 0.3190 Epoch 19/100 71/71 [==============================] - 1s 10ms/step - loss: 1.2243 - accuracy: 0.6088 - val_loss: 2.5876 - val_accuracy: 0.2780 Epoch 20/100 71/71 [==============================] - 1s 10ms/step - loss: 1.1852 - accuracy: 0.6196 - val_loss: 2.8509 - val_accuracy: 0.2423 Epoch 21/100 71/71 [==============================] - 1s 11ms/step - loss: 1.1861 - accuracy: 0.6192 - val_loss: 2.4315 - val_accuracy: 0.3207 Epoch 22/100 71/71 [==============================] - 1s 10ms/step - loss: 1.1385 - accuracy: 0.6368 - val_loss: 2.4595 - val_accuracy: 0.3197 Epoch 23/100 71/71 [==============================] - 1s 11ms/step - loss: 1.0842 - accuracy: 0.6541 - val_loss: 2.3941 - val_accuracy: 0.3453 Epoch 24/100 71/71 [==============================] - 1s 10ms/step - loss: 1.0685 - accuracy: 0.6571 - val_loss: 2.4295 - val_accuracy: 0.3447 Epoch 25/100 71/71 [==============================] - 1s 10ms/step - loss: 1.0402 - accuracy: 0.6722 - val_loss: 2.6481 - val_accuracy: 0.3063 Epoch 26/100 71/71 [==============================] - 1s 11ms/step - loss: 1.0048 - accuracy: 0.6779 - val_loss: 2.3599 - val_accuracy: 0.3733 Epoch 27/100 71/71 [==============================] - 1s 10ms/step - loss: 0.9870 - accuracy: 0.6766 - val_loss: 2.7062 - val_accuracy: 0.3010 Epoch 28/100 71/71 [==============================] - 1s 10ms/step - loss: 0.9875 - accuracy: 0.6886 - val_loss: 2.2198 - val_accuracy: 0.3827 Epoch 29/100 71/71 [==============================] - 1s 10ms/step - loss: 0.9409 - accuracy: 0.7060 - val_loss: 2.4944 - val_accuracy: 0.3513 Epoch 30/100 71/71 [==============================] - 1s 10ms/step - loss: 0.9053 - accuracy: 0.7078 - val_loss: 2.4725 - val_accuracy: 0.3740 Epoch 31/100 71/71 [==============================] - 1s 10ms/step - loss: 0.9076 - accuracy: 0.7113 - val_loss: 2.6415 - val_accuracy: 0.3467 Epoch 32/100 71/71 [==============================] - 1s 10ms/step - loss: 0.9123 - accuracy: 0.7127 - val_loss: 2.2641 - val_accuracy: 0.3983 Epoch 33/100 71/71 [==============================] - 1s 10ms/step - loss: 0.8713 - accuracy: 0.7243 - val_loss: 2.5348 - val_accuracy: 0.3430 Epoch 34/100 71/71 [==============================] - 1s 10ms/step - loss: 0.8545 - accuracy: 0.7282 - val_loss: 2.4908 - val_accuracy: 0.3783 Epoch 35/100 71/71 [==============================] - 1s 10ms/step - loss: 0.8395 - accuracy: 0.7348 - val_loss: 2.3874 - val_accuracy: 0.3940 Epoch 36/100 71/71 [==============================] - 1s 10ms/step - loss: 0.8219 - accuracy: 0.7329 - val_loss: 2.7127 - val_accuracy: 0.3323 Epoch 37/100 71/71 [==============================] - 1s 10ms/step - loss: 0.7911 - accuracy: 0.7486 - val_loss: 2.3691 - val_accuracy: 0.4017 Epoch 38/100 71/71 [==============================] - 1s 10ms/step - loss: 0.7893 - accuracy: 0.7480 - val_loss: 2.6372 - val_accuracy: 0.3547 Epoch 39/100 71/71 [==============================] - 1s 10ms/step - loss: 0.7798 - accuracy: 0.7483 - val_loss: 2.6237 - val_accuracy: 0.3663 Epoch 40/100 71/71 [==============================] - 1s 10ms/step - loss: 0.7832 - accuracy: 0.7561 - val_loss: 2.5043 - val_accuracy: 0.3810 Epoch 41/100 71/71 [==============================] - 1s 10ms/step - loss: 0.7417 - accuracy: 0.7632 - val_loss: 2.7125 - val_accuracy: 0.3693 Epoch 42/100 71/71 [==============================] - 1s 10ms/step - loss: 0.7540 - accuracy: 0.7582 - val_loss: 2.4909 - val_accuracy: 0.3787 Epoch 43/100 71/71 [==============================] - 1s 10ms/step - loss: 0.7394 - accuracy: 0.7637 - val_loss: 2.4470 - val_accuracy: 0.3887 Epoch 44/100 71/71 [==============================] - 1s 10ms/step - loss: 0.7230 - accuracy: 0.7705 - val_loss: 2.5745 - val_accuracy: 0.3630 Epoch 45/100 71/71 [==============================] - 1s 10ms/step - loss: 0.7290 - accuracy: 0.7647 - val_loss: 2.2601 - val_accuracy: 0.4137 Epoch 46/100 71/71 [==============================] - 1s 10ms/step - loss: 0.6906 - accuracy: 0.7777 - val_loss: 2.2947 - val_accuracy: 0.4110 Epoch 47/100 71/71 [==============================] - 1s 10ms/step - loss: 0.6990 - accuracy: 0.7736 - val_loss: 2.5454 - val_accuracy: 0.3657 Epoch 48/100 71/71 [==============================] - 1s 11ms/step - loss: 0.6799 - accuracy: 0.7808 - val_loss: 2.2775 - val_accuracy: 0.4287 Epoch 49/100 71/71 [==============================] - 1s 11ms/step - loss: 0.6623 - accuracy: 0.7878 - val_loss: 2.6056 - val_accuracy: 0.3643 Epoch 50/100 71/71 [==============================] - 1s 10ms/step - loss: 0.6727 - accuracy: 0.7849 - val_loss: 2.4585 - val_accuracy: 0.4027 Epoch 51/100 71/71 [==============================] - 1s 10ms/step - loss: 0.6741 - accuracy: 0.7847 - val_loss: 2.2154 - val_accuracy: 0.4530 Epoch 52/100 71/71 [==============================] - 1s 10ms/step - loss: 0.6371 - accuracy: 0.7952 - val_loss: 2.3171 - val_accuracy: 0.4323 Epoch 53/100 71/71 [==============================] - 1s 10ms/step - loss: 0.6447 - accuracy: 0.7930 - val_loss: 2.3735 - val_accuracy: 0.4333 Epoch 54/100 71/71 [==============================] - 1s 10ms/step - loss: 0.6663 - accuracy: 0.7818 - val_loss: 1.9901 - val_accuracy: 0.4757 Epoch 55/100 71/71 [==============================] - 1s 10ms/step - loss: 0.6348 - accuracy: 0.7953 - val_loss: 2.1716 - val_accuracy: 0.4537 Epoch 56/100 71/71 [==============================] - 1s 10ms/step - loss: 0.6102 - accuracy: 0.8051 - val_loss: 2.3640 - val_accuracy: 0.4170 Epoch 57/100 71/71 [==============================] - 1s 10ms/step - loss: 0.6159 - accuracy: 0.7979 - val_loss: 2.2544 - val_accuracy: 0.4410 Epoch 58/100 71/71 [==============================] - 1s 10ms/step - loss: 0.6021 - accuracy: 0.8084 - val_loss: 2.2281 - val_accuracy: 0.4523 Epoch 59/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5968 - accuracy: 0.8082 - val_loss: 2.5730 - val_accuracy: 0.3990 Epoch 60/100 71/71 [==============================] - 1s 10ms/step - loss: 0.6023 - accuracy: 0.8058 - val_loss: 2.2787 - val_accuracy: 0.4463 Epoch 61/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5930 - accuracy: 0.8135 - val_loss: 2.0946 - val_accuracy: 0.4730 Epoch 62/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5865 - accuracy: 0.8114 - val_loss: 2.4930 - val_accuracy: 0.4023 Epoch 63/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5831 - accuracy: 0.8172 - val_loss: 2.1865 - val_accuracy: 0.4540 Epoch 64/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5882 - accuracy: 0.8146 - val_loss: 2.3104 - val_accuracy: 0.4487 Epoch 65/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5476 - accuracy: 0.8248 - val_loss: 2.2969 - val_accuracy: 0.4463 Epoch 66/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5484 - accuracy: 0.8286 - val_loss: 2.4530 - val_accuracy: 0.4297 Epoch 67/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5498 - accuracy: 0.8212 - val_loss: 2.1838 - val_accuracy: 0.4647 Epoch 68/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5603 - accuracy: 0.8216 - val_loss: 2.1711 - val_accuracy: 0.4603 Epoch 69/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5369 - accuracy: 0.8249 - val_loss: 2.2352 - val_accuracy: 0.4477 Epoch 70/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5586 - accuracy: 0.8196 - val_loss: 1.9561 - val_accuracy: 0.4807 Epoch 71/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5389 - accuracy: 0.8301 - val_loss: 2.2028 - val_accuracy: 0.4530 Epoch 72/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5176 - accuracy: 0.8346 - val_loss: 2.0643 - val_accuracy: 0.4670 Epoch 73/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5062 - accuracy: 0.8344 - val_loss: 2.3587 - val_accuracy: 0.4383 Epoch 74/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5217 - accuracy: 0.8320 - val_loss: 2.6017 - val_accuracy: 0.3947 Epoch 75/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5341 - accuracy: 0.8321 - val_loss: 2.2658 - val_accuracy: 0.4343 Epoch 76/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5214 - accuracy: 0.8274 - val_loss: 2.4145 - val_accuracy: 0.4253 Epoch 77/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5145 - accuracy: 0.8323 - val_loss: 2.3655 - val_accuracy: 0.4373 Epoch 78/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5245 - accuracy: 0.8281 - val_loss: 2.3283 - val_accuracy: 0.4367 Epoch 79/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5070 - accuracy: 0.8348 - val_loss: 2.4871 - val_accuracy: 0.4107 Epoch 80/100 71/71 [==============================] - 1s 11ms/step - loss: 0.5081 - accuracy: 0.8397 - val_loss: 2.4763 - val_accuracy: 0.4183 Epoch 81/100 71/71 [==============================] - 1s 10ms/step - loss: 0.4829 - accuracy: 0.8450 - val_loss: 2.0457 - val_accuracy: 0.4740 Epoch 82/100 71/71 [==============================] - 1s 10ms/step - loss: 0.4838 - accuracy: 0.8398 - val_loss: 2.1399 - val_accuracy: 0.4700 Epoch 83/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4951 - accuracy: 0.8377 - val_loss: 2.2305 - val_accuracy: 0.4457 Epoch 84/100 71/71 [==============================] - 1s 10ms/step - loss: 0.4857 - accuracy: 0.8428 - val_loss: 2.0490 - val_accuracy: 0.4813 Epoch 85/100 71/71 [==============================] - 1s 10ms/step - loss: 0.4830 - accuracy: 0.8423 - val_loss: 2.2133 - val_accuracy: 0.4723 Epoch 86/100 71/71 [==============================] - 1s 10ms/step - loss: 0.4988 - accuracy: 0.8404 - val_loss: 2.1927 - val_accuracy: 0.4633 Epoch 87/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4946 - accuracy: 0.8374 - val_loss: 2.4861 - val_accuracy: 0.4043 Epoch 88/100 71/71 [==============================] - 1s 10ms/step - loss: 0.4629 - accuracy: 0.8496 - val_loss: 2.5507 - val_accuracy: 0.4083 Epoch 89/100 71/71 [==============================] - 1s 10ms/step - loss: 0.4707 - accuracy: 0.8478 - val_loss: 2.3687 - val_accuracy: 0.4440 Epoch 90/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4615 - accuracy: 0.8480 - val_loss: 2.5285 - val_accuracy: 0.4243 Epoch 91/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4881 - accuracy: 0.8455 - val_loss: 2.3600 - val_accuracy: 0.4330 Epoch 92/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4917 - accuracy: 0.8434 - val_loss: 2.3062 - val_accuracy: 0.4367 Epoch 93/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4710 - accuracy: 0.8525 - val_loss: 2.1315 - val_accuracy: 0.4757 Epoch 94/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4765 - accuracy: 0.8465 - val_loss: 2.2069 - val_accuracy: 0.4707 Epoch 95/100 71/71 [==============================] - 1s 10ms/step - loss: 0.4593 - accuracy: 0.8552 - val_loss: 2.5172 - val_accuracy: 0.4183 Epoch 96/100 71/71 [==============================] - 1s 10ms/step - loss: 0.4453 - accuracy: 0.8564 - val_loss: 2.2245 - val_accuracy: 0.4640 Epoch 97/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4506 - accuracy: 0.8509 - val_loss: 2.2992 - val_accuracy: 0.4553 Epoch 98/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4587 - accuracy: 0.8541 - val_loss: 2.1410 - val_accuracy: 0.4723 Epoch 99/100 71/71 [==============================] - 1s 10ms/step - loss: 0.4557 - accuracy: 0.8560 - val_loss: 2.2545 - val_accuracy: 0.4420 Epoch 100/100 71/71 [==============================] - 1s 10ms/step - loss: 0.4363 - accuracy: 0.8623 - val_loss: 2.2337 - val_accuracy: 0.4570 94/94 [==============================] - 0s 4ms/step - loss: 2.2035 - accuracy: 0.4587 CNN Error: 54.13%
model = Sequential()
model.add(Conv2D(64, (3, 3), activation='relu',input_shape=(31,31,1)))
model.add(Conv2D(64, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.2))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.2))
model.add(Flatten())
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(128, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
history = model.fit(X_train,y_train, validation_data=(X_val,y_val),epochs=100, batch_size=128)
scores = model.evaluate(X_test,y_test)
print("CNN Error: %.2f%%" % (100-scores[1]*100))
plotAUC(history)
Epoch 1/100 71/71 [==============================] - 2s 19ms/step - loss: 2.6266 - accuracy: 0.0991 - val_loss: 2.6006 - val_accuracy: 0.0883 Epoch 2/100 71/71 [==============================] - 1s 16ms/step - loss: 2.4684 - accuracy: 0.1380 - val_loss: 2.3833 - val_accuracy: 0.1877 Epoch 3/100 71/71 [==============================] - 1s 16ms/step - loss: 2.3142 - accuracy: 0.2017 - val_loss: 2.2416 - val_accuracy: 0.2497 Epoch 4/100 71/71 [==============================] - 1s 16ms/step - loss: 2.1313 - accuracy: 0.2815 - val_loss: 2.0285 - val_accuracy: 0.3077 Epoch 5/100 71/71 [==============================] - 1s 16ms/step - loss: 1.9239 - accuracy: 0.3514 - val_loss: 1.7508 - val_accuracy: 0.4243 Epoch 6/100 71/71 [==============================] - 1s 16ms/step - loss: 1.7304 - accuracy: 0.4341 - val_loss: 1.5757 - val_accuracy: 0.4863 Epoch 7/100 71/71 [==============================] - 1s 16ms/step - loss: 1.5829 - accuracy: 0.4757 - val_loss: 1.4351 - val_accuracy: 0.5303 Epoch 8/100 71/71 [==============================] - 1s 15ms/step - loss: 1.4212 - accuracy: 0.5343 - val_loss: 1.2502 - val_accuracy: 0.6127 Epoch 9/100 71/71 [==============================] - 1s 16ms/step - loss: 1.3252 - accuracy: 0.5678 - val_loss: 1.4650 - val_accuracy: 0.5310 Epoch 10/100 71/71 [==============================] - 1s 16ms/step - loss: 1.2150 - accuracy: 0.6021 - val_loss: 1.1625 - val_accuracy: 0.6190 Epoch 11/100 71/71 [==============================] - 1s 15ms/step - loss: 1.1364 - accuracy: 0.6330 - val_loss: 1.0021 - val_accuracy: 0.6983 Epoch 12/100 71/71 [==============================] - 1s 15ms/step - loss: 1.0541 - accuracy: 0.6680 - val_loss: 0.9999 - val_accuracy: 0.6913 Epoch 13/100 71/71 [==============================] - 1s 15ms/step - loss: 0.9811 - accuracy: 0.6823 - val_loss: 0.9800 - val_accuracy: 0.6923 Epoch 14/100 71/71 [==============================] - 1s 16ms/step - loss: 0.8831 - accuracy: 0.7229 - val_loss: 0.7664 - val_accuracy: 0.7610 Epoch 15/100 71/71 [==============================] - 1s 16ms/step - loss: 0.8133 - accuracy: 0.7367 - val_loss: 0.7967 - val_accuracy: 0.7563 Epoch 16/100 71/71 [==============================] - 1s 16ms/step - loss: 0.7432 - accuracy: 0.7636 - val_loss: 0.7186 - val_accuracy: 0.7703 Epoch 17/100 71/71 [==============================] - 1s 16ms/step - loss: 0.7099 - accuracy: 0.7726 - val_loss: 0.6533 - val_accuracy: 0.8030 Epoch 18/100 71/71 [==============================] - 1s 16ms/step - loss: 0.6797 - accuracy: 0.7830 - val_loss: 0.7054 - val_accuracy: 0.7723 Epoch 19/100 71/71 [==============================] - 1s 16ms/step - loss: 0.6284 - accuracy: 0.7983 - val_loss: 0.7143 - val_accuracy: 0.7733 Epoch 20/100 71/71 [==============================] - 1s 16ms/step - loss: 0.6365 - accuracy: 0.8015 - val_loss: 0.5660 - val_accuracy: 0.8280 Epoch 21/100 71/71 [==============================] - 1s 16ms/step - loss: 0.5683 - accuracy: 0.8162 - val_loss: 0.5402 - val_accuracy: 0.8347 Epoch 22/100 71/71 [==============================] - 1s 16ms/step - loss: 0.5113 - accuracy: 0.8385 - val_loss: 0.5301 - val_accuracy: 0.8367 Epoch 23/100 71/71 [==============================] - 1s 15ms/step - loss: 0.4796 - accuracy: 0.8461 - val_loss: 0.5264 - val_accuracy: 0.8420 Epoch 24/100 71/71 [==============================] - 1s 15ms/step - loss: 0.4551 - accuracy: 0.8581 - val_loss: 0.5380 - val_accuracy: 0.8370 Epoch 25/100 71/71 [==============================] - 1s 15ms/step - loss: 0.4305 - accuracy: 0.8630 - val_loss: 0.4861 - val_accuracy: 0.8587 Epoch 26/100 71/71 [==============================] - 1s 15ms/step - loss: 0.4101 - accuracy: 0.8716 - val_loss: 0.4614 - val_accuracy: 0.8660 Epoch 27/100 71/71 [==============================] - 1s 15ms/step - loss: 0.3992 - accuracy: 0.8762 - val_loss: 0.4787 - val_accuracy: 0.8623 Epoch 28/100 71/71 [==============================] - 1s 15ms/step - loss: 0.3636 - accuracy: 0.8803 - val_loss: 0.4935 - val_accuracy: 0.8607 Epoch 29/100 71/71 [==============================] - 1s 15ms/step - loss: 0.3437 - accuracy: 0.8882 - val_loss: 0.5184 - val_accuracy: 0.8447 Epoch 30/100 71/71 [==============================] - 1s 15ms/step - loss: 0.3511 - accuracy: 0.8876 - val_loss: 0.3981 - val_accuracy: 0.8840 Epoch 31/100 71/71 [==============================] - 1s 15ms/step - loss: 0.3211 - accuracy: 0.9014 - val_loss: 0.4512 - val_accuracy: 0.8703 Epoch 32/100 71/71 [==============================] - 1s 15ms/step - loss: 0.3221 - accuracy: 0.8973 - val_loss: 0.5520 - val_accuracy: 0.8523 Epoch 33/100 71/71 [==============================] - 1s 15ms/step - loss: 0.3320 - accuracy: 0.8982 - val_loss: 0.4283 - val_accuracy: 0.8793 Epoch 34/100 71/71 [==============================] - 1s 16ms/step - loss: 0.2786 - accuracy: 0.9082 - val_loss: 0.4080 - val_accuracy: 0.8857 Epoch 35/100 71/71 [==============================] - 1s 15ms/step - loss: 0.2808 - accuracy: 0.9132 - val_loss: 0.4385 - val_accuracy: 0.8810 Epoch 36/100 71/71 [==============================] - 1s 15ms/step - loss: 0.2655 - accuracy: 0.9156 - val_loss: 0.4364 - val_accuracy: 0.8820 Epoch 37/100 71/71 [==============================] - 1s 15ms/step - loss: 0.2598 - accuracy: 0.9155 - val_loss: 0.3888 - val_accuracy: 0.9027 Epoch 38/100 71/71 [==============================] - 1s 15ms/step - loss: 0.2202 - accuracy: 0.9283 - val_loss: 0.3983 - val_accuracy: 0.8943 Epoch 39/100 71/71 [==============================] - 1s 15ms/step - loss: 0.2391 - accuracy: 0.9230 - val_loss: 0.4096 - val_accuracy: 0.8917 Epoch 40/100 71/71 [==============================] - 1s 15ms/step - loss: 0.2175 - accuracy: 0.9327 - val_loss: 0.4265 - val_accuracy: 0.8897 Epoch 41/100 71/71 [==============================] - 1s 15ms/step - loss: 0.2123 - accuracy: 0.9322 - val_loss: 0.4846 - val_accuracy: 0.8847 Epoch 42/100 71/71 [==============================] - 1s 15ms/step - loss: 0.2491 - accuracy: 0.9236 - val_loss: 0.3954 - val_accuracy: 0.8983 Epoch 43/100 71/71 [==============================] - 1s 15ms/step - loss: 0.2101 - accuracy: 0.9356 - val_loss: 0.4137 - val_accuracy: 0.8947 Epoch 44/100 71/71 [==============================] - 1s 16ms/step - loss: 0.2025 - accuracy: 0.9349 - val_loss: 0.4301 - val_accuracy: 0.8977 Epoch 45/100 71/71 [==============================] - 1s 16ms/step - loss: 0.2138 - accuracy: 0.9356 - val_loss: 0.4024 - val_accuracy: 0.9030 Epoch 46/100 71/71 [==============================] - 1s 16ms/step - loss: 0.2084 - accuracy: 0.9361 - val_loss: 0.4113 - val_accuracy: 0.8933 Epoch 47/100 71/71 [==============================] - 1s 16ms/step - loss: 0.1735 - accuracy: 0.9449 - val_loss: 0.4240 - val_accuracy: 0.9007 Epoch 48/100 71/71 [==============================] - 1s 16ms/step - loss: 0.1788 - accuracy: 0.9455 - val_loss: 0.3792 - val_accuracy: 0.9040 Epoch 49/100 71/71 [==============================] - 1s 16ms/step - loss: 0.1635 - accuracy: 0.9490 - val_loss: 0.4182 - val_accuracy: 0.8983 Epoch 50/100 71/71 [==============================] - 1s 16ms/step - loss: 0.1690 - accuracy: 0.9478 - val_loss: 0.4176 - val_accuracy: 0.8943 Epoch 51/100 71/71 [==============================] - 1s 16ms/step - loss: 0.1433 - accuracy: 0.9560 - val_loss: 0.4378 - val_accuracy: 0.8980 Epoch 52/100 71/71 [==============================] - 1s 16ms/step - loss: 0.1490 - accuracy: 0.9555 - val_loss: 0.4143 - val_accuracy: 0.9053 Epoch 53/100 71/71 [==============================] - 1s 16ms/step - loss: 0.1616 - accuracy: 0.9515 - val_loss: 0.4057 - val_accuracy: 0.9033 Epoch 54/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1519 - accuracy: 0.9548 - val_loss: 0.4613 - val_accuracy: 0.8970 Epoch 55/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1455 - accuracy: 0.9570 - val_loss: 0.4009 - val_accuracy: 0.9067 Epoch 56/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1652 - accuracy: 0.9502 - val_loss: 0.3852 - val_accuracy: 0.9020 Epoch 57/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1409 - accuracy: 0.9572 - val_loss: 0.3893 - val_accuracy: 0.9047 Epoch 58/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1332 - accuracy: 0.9574 - val_loss: 0.4359 - val_accuracy: 0.9053 Epoch 59/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1386 - accuracy: 0.9587 - val_loss: 0.3881 - val_accuracy: 0.9127 Epoch 60/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1384 - accuracy: 0.9592 - val_loss: 0.3629 - val_accuracy: 0.9133 Epoch 61/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1474 - accuracy: 0.9555 - val_loss: 0.3799 - val_accuracy: 0.9110 Epoch 62/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1395 - accuracy: 0.9606 - val_loss: 0.3797 - val_accuracy: 0.9037 Epoch 63/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1174 - accuracy: 0.9638 - val_loss: 0.3761 - val_accuracy: 0.9113 Epoch 64/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1423 - accuracy: 0.9560 - val_loss: 0.4054 - val_accuracy: 0.9080 Epoch 65/100 71/71 [==============================] - 1s 16ms/step - loss: 0.1164 - accuracy: 0.9641 - val_loss: 0.4000 - val_accuracy: 0.9093 Epoch 66/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1214 - accuracy: 0.9633 - val_loss: 0.4261 - val_accuracy: 0.9047 Epoch 67/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1175 - accuracy: 0.9630 - val_loss: 0.4004 - val_accuracy: 0.9103 Epoch 68/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1426 - accuracy: 0.9548 - val_loss: 0.4091 - val_accuracy: 0.9037 Epoch 69/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1154 - accuracy: 0.9668 - val_loss: 0.4341 - val_accuracy: 0.9000 Epoch 70/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1119 - accuracy: 0.9662 - val_loss: 0.4321 - val_accuracy: 0.9107 Epoch 71/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1227 - accuracy: 0.9630 - val_loss: 0.4644 - val_accuracy: 0.8997 Epoch 72/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1197 - accuracy: 0.9639 - val_loss: 0.3845 - val_accuracy: 0.9100 Epoch 73/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0915 - accuracy: 0.9712 - val_loss: 0.4377 - val_accuracy: 0.9060 Epoch 74/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1022 - accuracy: 0.9692 - val_loss: 0.4480 - val_accuracy: 0.9087 Epoch 75/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1030 - accuracy: 0.9675 - val_loss: 0.4113 - val_accuracy: 0.9157 Epoch 76/100 71/71 [==============================] - 1s 16ms/step - loss: 0.0985 - accuracy: 0.9690 - val_loss: 0.4500 - val_accuracy: 0.9093 Epoch 77/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0945 - accuracy: 0.9716 - val_loss: 0.4197 - val_accuracy: 0.9127 Epoch 78/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1166 - accuracy: 0.9644 - val_loss: 0.4911 - val_accuracy: 0.8947 Epoch 79/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0936 - accuracy: 0.9710 - val_loss: 0.4318 - val_accuracy: 0.9067 Epoch 80/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0874 - accuracy: 0.9721 - val_loss: 0.4064 - val_accuracy: 0.9170 Epoch 81/100 71/71 [==============================] - 1s 16ms/step - loss: 0.0997 - accuracy: 0.9693 - val_loss: 0.3881 - val_accuracy: 0.9190 Epoch 82/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1017 - accuracy: 0.9699 - val_loss: 0.3952 - val_accuracy: 0.9177 Epoch 83/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0917 - accuracy: 0.9699 - val_loss: 0.4274 - val_accuracy: 0.9047 Epoch 84/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1033 - accuracy: 0.9694 - val_loss: 0.5210 - val_accuracy: 0.8940 Epoch 85/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1093 - accuracy: 0.9674 - val_loss: 0.4183 - val_accuracy: 0.9080 Epoch 86/100 71/71 [==============================] - 1s 16ms/step - loss: 0.0853 - accuracy: 0.9729 - val_loss: 0.4312 - val_accuracy: 0.9120 Epoch 87/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1159 - accuracy: 0.9658 - val_loss: 0.4119 - val_accuracy: 0.9033 Epoch 88/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1023 - accuracy: 0.9700 - val_loss: 0.3895 - val_accuracy: 0.9157 Epoch 89/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1007 - accuracy: 0.9700 - val_loss: 0.3587 - val_accuracy: 0.9243 Epoch 90/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0869 - accuracy: 0.9750 - val_loss: 0.4275 - val_accuracy: 0.8990 Epoch 91/100 71/71 [==============================] - 1s 16ms/step - loss: 0.0912 - accuracy: 0.9741 - val_loss: 0.4146 - val_accuracy: 0.9083 Epoch 92/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0829 - accuracy: 0.9735 - val_loss: 0.4542 - val_accuracy: 0.9070 Epoch 93/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0892 - accuracy: 0.9740 - val_loss: 0.4325 - val_accuracy: 0.9083 Epoch 94/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0840 - accuracy: 0.9750 - val_loss: 0.4814 - val_accuracy: 0.9017 Epoch 95/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0849 - accuracy: 0.9757 - val_loss: 0.5620 - val_accuracy: 0.8937 Epoch 96/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0771 - accuracy: 0.9764 - val_loss: 0.4186 - val_accuracy: 0.9113 Epoch 97/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0674 - accuracy: 0.9773 - val_loss: 0.4783 - val_accuracy: 0.9040 Epoch 98/100 71/71 [==============================] - 1s 15ms/step - loss: 0.1023 - accuracy: 0.9689 - val_loss: 0.4150 - val_accuracy: 0.9147 Epoch 99/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0882 - accuracy: 0.9734 - val_loss: 0.5038 - val_accuracy: 0.9003 Epoch 100/100 71/71 [==============================] - 1s 15ms/step - loss: 0.0895 - accuracy: 0.9713 - val_loss: 0.4232 - val_accuracy: 0.9083 94/94 [==============================] - 0s 3ms/step - loss: 0.3764 - accuracy: 0.9077 CNN Error: 9.23%
# Model 2 Comments
# Reduce Dropout
from tensorflow.keras.layers.experimental.preprocessing import Rescaling
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense
from tensorflow.keras.layers import Dropout
from tensorflow.keras.layers import Flatten
from tensorflow.keras.layers import Conv2D
from tensorflow.keras.layers import MaxPooling2D,GlobalAveragePooling2D
from tensorflow.keras.utils import to_categorical
from tensorflow.keras.layers import Conv2D, BatchNormalization
from tensorflow.keras import regularizers
model = Sequential()
model.add(RandomFlip('horizontal',input_shape=(31,31,1)))
model.add(Conv2D(64, (3, 3), activation='relu'))
model.add(Conv2D(64, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.2))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.2))
model.add(Flatten())
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(128, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
history = model.fit(X_train,y_train, validation_data=(X_val,y_val),epochs=100, batch_size=128)
scores = model.evaluate(X_test,y_test)
print("CNN Error: %.2f%%" % (100-scores[1]*100))
plotAUC(history)
Epoch 1/100 71/71 [==============================] - 4s 46ms/step - loss: 2.6266 - accuracy: 0.0918 - val_loss: 2.6407 - val_accuracy: 0.0737 Epoch 2/100 71/71 [==============================] - 3s 46ms/step - loss: 2.5095 - accuracy: 0.1220 - val_loss: 2.4914 - val_accuracy: 0.1727 Epoch 3/100 71/71 [==============================] - 3s 44ms/step - loss: 2.3833 - accuracy: 0.1704 - val_loss: 2.4436 - val_accuracy: 0.1750 Epoch 4/100 71/71 [==============================] - 3s 44ms/step - loss: 2.2263 - accuracy: 0.2424 - val_loss: 2.1463 - val_accuracy: 0.3110 Epoch 5/100 71/71 [==============================] - 3s 44ms/step - loss: 2.0530 - accuracy: 0.3074 - val_loss: 1.8839 - val_accuracy: 0.3757 Epoch 6/100 71/71 [==============================] - 3s 43ms/step - loss: 1.8097 - accuracy: 0.4065 - val_loss: 1.7414 - val_accuracy: 0.4307 Epoch 7/100 71/71 [==============================] - 3s 45ms/step - loss: 1.6570 - accuracy: 0.4578 - val_loss: 1.5570 - val_accuracy: 0.4907 Epoch 8/100 71/71 [==============================] - 3s 45ms/step - loss: 1.4753 - accuracy: 0.5205 - val_loss: 1.4697 - val_accuracy: 0.5360 Epoch 9/100 71/71 [==============================] - 3s 47ms/step - loss: 1.3592 - accuracy: 0.5545 - val_loss: 1.1329 - val_accuracy: 0.6400 Epoch 10/100 71/71 [==============================] - 3s 44ms/step - loss: 1.2548 - accuracy: 0.5932 - val_loss: 1.1022 - val_accuracy: 0.6563 Epoch 11/100 71/71 [==============================] - 3s 46ms/step - loss: 1.1648 - accuracy: 0.6247 - val_loss: 1.1140 - val_accuracy: 0.6530 Epoch 12/100 71/71 [==============================] - 3s 45ms/step - loss: 1.0834 - accuracy: 0.6514 - val_loss: 0.9459 - val_accuracy: 0.7017 Epoch 13/100 71/71 [==============================] - 3s 45ms/step - loss: 0.9693 - accuracy: 0.6901 - val_loss: 0.8820 - val_accuracy: 0.7140 Epoch 14/100 71/71 [==============================] - 3s 43ms/step - loss: 0.9536 - accuracy: 0.6964 - val_loss: 0.8084 - val_accuracy: 0.7603 Epoch 15/100 71/71 [==============================] - 3s 44ms/step - loss: 0.8304 - accuracy: 0.7306 - val_loss: 0.7038 - val_accuracy: 0.7903 Epoch 16/100 71/71 [==============================] - 3s 44ms/step - loss: 0.7714 - accuracy: 0.7503 - val_loss: 0.6870 - val_accuracy: 0.7873 Epoch 17/100 71/71 [==============================] - 3s 46ms/step - loss: 0.7263 - accuracy: 0.7672 - val_loss: 0.6408 - val_accuracy: 0.8060 Epoch 18/100 71/71 [==============================] - 3s 48ms/step - loss: 0.6920 - accuracy: 0.7809 - val_loss: 0.5891 - val_accuracy: 0.8180 Epoch 19/100 71/71 [==============================] - 3s 47ms/step - loss: 0.6768 - accuracy: 0.7846 - val_loss: 0.7323 - val_accuracy: 0.7603 Epoch 20/100 71/71 [==============================] - 3s 47ms/step - loss: 0.6035 - accuracy: 0.8074 - val_loss: 0.5547 - val_accuracy: 0.8313 Epoch 21/100 71/71 [==============================] - 3s 48ms/step - loss: 0.5750 - accuracy: 0.8149 - val_loss: 0.5869 - val_accuracy: 0.8113 Epoch 22/100 71/71 [==============================] - 3s 48ms/step - loss: 0.5597 - accuracy: 0.8255 - val_loss: 0.4969 - val_accuracy: 0.8497 Epoch 23/100 71/71 [==============================] - 3s 46ms/step - loss: 0.4967 - accuracy: 0.8442 - val_loss: 0.4758 - val_accuracy: 0.8580 Epoch 24/100 71/71 [==============================] - 3s 46ms/step - loss: 0.4800 - accuracy: 0.8504 - val_loss: 0.5441 - val_accuracy: 0.8397 Epoch 25/100 71/71 [==============================] - 3s 45ms/step - loss: 0.4626 - accuracy: 0.8559 - val_loss: 0.4508 - val_accuracy: 0.8587 Epoch 26/100 71/71 [==============================] - 3s 45ms/step - loss: 0.4278 - accuracy: 0.8625 - val_loss: 0.4654 - val_accuracy: 0.8587 Epoch 27/100 71/71 [==============================] - 3s 47ms/step - loss: 0.4201 - accuracy: 0.8672 - val_loss: 0.4545 - val_accuracy: 0.8603 Epoch 28/100 71/71 [==============================] - 3s 45ms/step - loss: 0.3993 - accuracy: 0.8722 - val_loss: 0.4602 - val_accuracy: 0.8647 Epoch 29/100 71/71 [==============================] - 3s 46ms/step - loss: 0.3887 - accuracy: 0.8749 - val_loss: 0.4811 - val_accuracy: 0.8603 Epoch 30/100 71/71 [==============================] - 3s 47ms/step - loss: 0.3668 - accuracy: 0.8831 - val_loss: 0.4173 - val_accuracy: 0.8753 Epoch 31/100 71/71 [==============================] - 4s 50ms/step - loss: 0.3550 - accuracy: 0.8850 - val_loss: 0.4073 - val_accuracy: 0.8820 Epoch 32/100 71/71 [==============================] - 3s 48ms/step - loss: 0.3411 - accuracy: 0.8920 - val_loss: 0.4111 - val_accuracy: 0.8860 Epoch 33/100 71/71 [==============================] - 3s 47ms/step - loss: 0.3342 - accuracy: 0.8900 - val_loss: 0.3691 - val_accuracy: 0.8957 Epoch 34/100 71/71 [==============================] - 3s 45ms/step - loss: 0.3113 - accuracy: 0.9051 - val_loss: 0.3920 - val_accuracy: 0.8857 Epoch 35/100 71/71 [==============================] - 3s 48ms/step - loss: 0.2896 - accuracy: 0.9083 - val_loss: 0.4045 - val_accuracy: 0.8817 Epoch 36/100 71/71 [==============================] - 3s 49ms/step - loss: 0.2735 - accuracy: 0.9147 - val_loss: 0.3671 - val_accuracy: 0.8967 Epoch 37/100 71/71 [==============================] - 3s 48ms/step - loss: 0.2534 - accuracy: 0.9174 - val_loss: 0.5497 - val_accuracy: 0.8550 Epoch 38/100 71/71 [==============================] - 3s 47ms/step - loss: 0.2603 - accuracy: 0.9191 - val_loss: 0.3743 - val_accuracy: 0.8970 Epoch 39/100 71/71 [==============================] - 4s 49ms/step - loss: 0.2359 - accuracy: 0.9273 - val_loss: 0.4286 - val_accuracy: 0.8857 Epoch 40/100 71/71 [==============================] - 3s 47ms/step - loss: 0.2573 - accuracy: 0.9174 - val_loss: 0.3560 - val_accuracy: 0.8960 Epoch 41/100 71/71 [==============================] - 4s 50ms/step - loss: 0.2254 - accuracy: 0.9259 - val_loss: 0.3892 - val_accuracy: 0.8957 Epoch 42/100 71/71 [==============================] - 3s 47ms/step - loss: 0.2169 - accuracy: 0.9313 - val_loss: 0.3721 - val_accuracy: 0.9023 Epoch 43/100 71/71 [==============================] - 3s 48ms/step - loss: 0.2121 - accuracy: 0.9312 - val_loss: 0.3642 - val_accuracy: 0.8983 Epoch 44/100 71/71 [==============================] - 3s 48ms/step - loss: 0.2013 - accuracy: 0.9353 - val_loss: 0.4161 - val_accuracy: 0.8880 Epoch 45/100 71/71 [==============================] - 3s 48ms/step - loss: 0.2130 - accuracy: 0.9334 - val_loss: 0.3631 - val_accuracy: 0.9000 Epoch 46/100 71/71 [==============================] - 3s 47ms/step - loss: 0.2141 - accuracy: 0.9332 - val_loss: 0.3693 - val_accuracy: 0.9057 Epoch 47/100 71/71 [==============================] - 3s 48ms/step - loss: 0.1892 - accuracy: 0.9392 - val_loss: 0.3820 - val_accuracy: 0.9020 Epoch 48/100 71/71 [==============================] - 3s 47ms/step - loss: 0.1847 - accuracy: 0.9410 - val_loss: 0.3818 - val_accuracy: 0.9030 Epoch 49/100 71/71 [==============================] - 3s 46ms/step - loss: 0.1995 - accuracy: 0.9366 - val_loss: 0.3497 - val_accuracy: 0.9140 Epoch 50/100 71/71 [==============================] - 3s 46ms/step - loss: 0.1864 - accuracy: 0.9401 - val_loss: 0.3907 - val_accuracy: 0.8987 Epoch 51/100 71/71 [==============================] - 3s 45ms/step - loss: 0.1607 - accuracy: 0.9507 - val_loss: 0.3676 - val_accuracy: 0.9087 Epoch 52/100 71/71 [==============================] - 3s 45ms/step - loss: 0.1814 - accuracy: 0.9423 - val_loss: 0.4164 - val_accuracy: 0.8987 Epoch 53/100 71/71 [==============================] - 3s 45ms/step - loss: 0.1891 - accuracy: 0.9395 - val_loss: 0.3699 - val_accuracy: 0.9073 Epoch 54/100 71/71 [==============================] - 3s 45ms/step - loss: 0.1699 - accuracy: 0.9466 - val_loss: 0.3691 - val_accuracy: 0.9057 Epoch 55/100 71/71 [==============================] - 3s 46ms/step - loss: 0.1677 - accuracy: 0.9493 - val_loss: 0.3664 - val_accuracy: 0.9063 Epoch 56/100 71/71 [==============================] - 3s 46ms/step - loss: 0.1499 - accuracy: 0.9535 - val_loss: 0.3752 - val_accuracy: 0.9070 Epoch 57/100 71/71 [==============================] - 3s 47ms/step - loss: 0.1712 - accuracy: 0.9476 - val_loss: 0.4041 - val_accuracy: 0.9007 Epoch 58/100 71/71 [==============================] - 3s 47ms/step - loss: 0.1429 - accuracy: 0.9549 - val_loss: 0.3863 - val_accuracy: 0.9103 Epoch 59/100 71/71 [==============================] - 3s 47ms/step - loss: 0.1415 - accuracy: 0.9560 - val_loss: 0.3542 - val_accuracy: 0.9143 Epoch 60/100 71/71 [==============================] - 3s 46ms/step - loss: 0.1413 - accuracy: 0.9564 - val_loss: 0.3961 - val_accuracy: 0.9060 Epoch 61/100 71/71 [==============================] - 3s 45ms/step - loss: 0.1439 - accuracy: 0.9561 - val_loss: 0.3501 - val_accuracy: 0.9123 Epoch 62/100 71/71 [==============================] - 3s 45ms/step - loss: 0.1237 - accuracy: 0.9612 - val_loss: 0.3976 - val_accuracy: 0.9050 Epoch 63/100 71/71 [==============================] - 3s 48ms/step - loss: 0.1273 - accuracy: 0.9598 - val_loss: 0.4601 - val_accuracy: 0.8893 Epoch 64/100 71/71 [==============================] - 3s 44ms/step - loss: 0.1835 - accuracy: 0.9430 - val_loss: 0.3680 - val_accuracy: 0.9087 Epoch 65/100 71/71 [==============================] - 3s 45ms/step - loss: 0.1290 - accuracy: 0.9596 - val_loss: 0.3547 - val_accuracy: 0.9160 Epoch 66/100 71/71 [==============================] - 4s 50ms/step - loss: 0.1109 - accuracy: 0.9652 - val_loss: 0.4116 - val_accuracy: 0.9077 Epoch 67/100 71/71 [==============================] - 3s 48ms/step - loss: 0.1273 - accuracy: 0.9628 - val_loss: 0.3757 - val_accuracy: 0.9150 Epoch 68/100 71/71 [==============================] - 3s 45ms/step - loss: 0.1221 - accuracy: 0.9637 - val_loss: 0.3643 - val_accuracy: 0.9173 Epoch 69/100 71/71 [==============================] - 3s 45ms/step - loss: 0.1224 - accuracy: 0.9650 - val_loss: 0.3916 - val_accuracy: 0.9073 Epoch 70/100 71/71 [==============================] - 3s 45ms/step - loss: 0.1142 - accuracy: 0.9650 - val_loss: 0.3748 - val_accuracy: 0.9110 Epoch 71/100 71/71 [==============================] - 3s 46ms/step - loss: 0.1135 - accuracy: 0.9648 - val_loss: 0.4204 - val_accuracy: 0.9043 Epoch 72/100 71/71 [==============================] - 3s 46ms/step - loss: 0.1332 - accuracy: 0.9607 - val_loss: 0.3665 - val_accuracy: 0.9110 Epoch 73/100 71/71 [==============================] - 3s 44ms/step - loss: 0.1155 - accuracy: 0.9657 - val_loss: 0.4259 - val_accuracy: 0.9057 Epoch 74/100 71/71 [==============================] - 3s 46ms/step - loss: 0.1354 - accuracy: 0.9566 - val_loss: 0.4287 - val_accuracy: 0.9013 Epoch 75/100 71/71 [==============================] - 3s 46ms/step - loss: 0.1153 - accuracy: 0.9619 - val_loss: 0.3667 - val_accuracy: 0.9143 Epoch 76/100 71/71 [==============================] - 3s 47ms/step - loss: 0.1085 - accuracy: 0.9662 - val_loss: 0.4023 - val_accuracy: 0.9083 Epoch 77/100 71/71 [==============================] - 3s 49ms/step - loss: 0.1219 - accuracy: 0.9630 - val_loss: 0.3633 - val_accuracy: 0.9147 Epoch 78/100 71/71 [==============================] - 3s 47ms/step - loss: 0.1287 - accuracy: 0.9605 - val_loss: 0.3538 - val_accuracy: 0.9157 Epoch 79/100 71/71 [==============================] - 3s 45ms/step - loss: 0.0868 - accuracy: 0.9732 - val_loss: 0.3544 - val_accuracy: 0.9223 Epoch 80/100 71/71 [==============================] - 3s 44ms/step - loss: 0.0881 - accuracy: 0.9731 - val_loss: 0.3622 - val_accuracy: 0.9223 Epoch 81/100 71/71 [==============================] - 3s 43ms/step - loss: 0.1097 - accuracy: 0.9663 - val_loss: 0.4011 - val_accuracy: 0.9113 Epoch 82/100 71/71 [==============================] - 3s 45ms/step - loss: 0.1138 - accuracy: 0.9644 - val_loss: 0.4104 - val_accuracy: 0.9097 Epoch 83/100 71/71 [==============================] - 3s 44ms/step - loss: 0.1323 - accuracy: 0.9609 - val_loss: 0.3857 - val_accuracy: 0.9127 Epoch 84/100 71/71 [==============================] - 3s 47ms/step - loss: 0.1104 - accuracy: 0.9657 - val_loss: 0.3849 - val_accuracy: 0.9117 Epoch 85/100 71/71 [==============================] - 3s 47ms/step - loss: 0.0957 - accuracy: 0.9702 - val_loss: 0.3521 - val_accuracy: 0.9230 Epoch 86/100 71/71 [==============================] - 3s 47ms/step - loss: 0.0954 - accuracy: 0.9693 - val_loss: 0.4114 - val_accuracy: 0.9143 Epoch 87/100 71/71 [==============================] - 3s 46ms/step - loss: 0.0915 - accuracy: 0.9724 - val_loss: 0.4031 - val_accuracy: 0.9173 Epoch 88/100 71/71 [==============================] - 3s 48ms/step - loss: 0.0738 - accuracy: 0.9763 - val_loss: 0.3658 - val_accuracy: 0.9257 Epoch 89/100 71/71 [==============================] - 3s 46ms/step - loss: 0.0830 - accuracy: 0.9740 - val_loss: 0.3800 - val_accuracy: 0.9190 Epoch 90/100 71/71 [==============================] - 3s 44ms/step - loss: 0.0692 - accuracy: 0.9822 - val_loss: 0.3630 - val_accuracy: 0.9250 Epoch 91/100 71/71 [==============================] - 3s 46ms/step - loss: 0.1123 - accuracy: 0.9679 - val_loss: 0.4119 - val_accuracy: 0.9097 Epoch 92/100 71/71 [==============================] - 3s 45ms/step - loss: 0.0841 - accuracy: 0.9736 - val_loss: 0.3848 - val_accuracy: 0.9200 Epoch 93/100 71/71 [==============================] - 3s 44ms/step - loss: 0.0737 - accuracy: 0.9771 - val_loss: 0.3651 - val_accuracy: 0.9207 Epoch 94/100 71/71 [==============================] - 3s 45ms/step - loss: 0.0924 - accuracy: 0.9703 - val_loss: 0.3654 - val_accuracy: 0.9193 Epoch 95/100 71/71 [==============================] - 3s 45ms/step - loss: 0.0796 - accuracy: 0.9749 - val_loss: 0.4243 - val_accuracy: 0.9133 Epoch 96/100 71/71 [==============================] - 3s 43ms/step - loss: 0.0934 - accuracy: 0.9703 - val_loss: 0.3833 - val_accuracy: 0.9203 Epoch 97/100 71/71 [==============================] - 3s 44ms/step - loss: 0.0701 - accuracy: 0.9790 - val_loss: 0.3537 - val_accuracy: 0.9187 Epoch 98/100 71/71 [==============================] - 3s 46ms/step - loss: 0.0944 - accuracy: 0.9733 - val_loss: 0.4420 - val_accuracy: 0.9153 Epoch 99/100 71/71 [==============================] - 3s 44ms/step - loss: 0.1080 - accuracy: 0.9665 - val_loss: 0.3952 - val_accuracy: 0.9060 Epoch 100/100 71/71 [==============================] - 3s 45ms/step - loss: 0.0826 - accuracy: 0.9741 - val_loss: 0.4259 - val_accuracy: 0.9140 94/94 [==============================] - 0s 4ms/step - loss: 0.3778 - accuracy: 0.9180 CNN Error: 8.20%
def getModel(activation):
model = Sequential()
model.add(Conv2D(64, (3, 3), activation=activation,input_shape=(31,31,1)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(128, (3, 3), activation=activation))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(256, (3, 3), activation=activation))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(512, activation=activation))
model.add(Dropout(0.5))
model.add(Dense(256, activation=activation))
model.add(Dropout(0.5))
model.add(Dense(15,activation='softmax'))
return model
activations = ['elu','tanh','relu','sigmoid']
results = {}
for function in activations:
model = getModel(function)
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
history = model.fit(X_train,y_train, validation_data=(X_val,y_val),epochs=100, batch_size=128)
results[function] = history
Epoch 1/100 71/71 [==============================] - 2s 15ms/step - loss: 2.3924 - accuracy: 0.2054 - val_loss: 2.2632 - val_accuracy: 0.2643 Epoch 2/100 71/71 [==============================] - 1s 11ms/step - loss: 1.8901 - accuracy: 0.3907 - val_loss: 1.9283 - val_accuracy: 0.3507 Epoch 3/100 71/71 [==============================] - 1s 11ms/step - loss: 1.6325 - accuracy: 0.4761 - val_loss: 1.6765 - val_accuracy: 0.4513 Epoch 4/100 71/71 [==============================] - 1s 11ms/step - loss: 1.4567 - accuracy: 0.5349 - val_loss: 1.3882 - val_accuracy: 0.5610 Epoch 5/100 71/71 [==============================] - 1s 11ms/step - loss: 1.2877 - accuracy: 0.5894 - val_loss: 1.1759 - val_accuracy: 0.6337 Epoch 6/100 71/71 [==============================] - 1s 11ms/step - loss: 1.1639 - accuracy: 0.6269 - val_loss: 1.0768 - val_accuracy: 0.6657 Epoch 7/100 71/71 [==============================] - 1s 10ms/step - loss: 1.0696 - accuracy: 0.6535 - val_loss: 0.9181 - val_accuracy: 0.7083 Epoch 8/100 71/71 [==============================] - 1s 11ms/step - loss: 0.9257 - accuracy: 0.6975 - val_loss: 1.1001 - val_accuracy: 0.6590 Epoch 9/100 71/71 [==============================] - 1s 10ms/step - loss: 0.8554 - accuracy: 0.7215 - val_loss: 0.8628 - val_accuracy: 0.7213 Epoch 10/100 71/71 [==============================] - 1s 11ms/step - loss: 0.7748 - accuracy: 0.7537 - val_loss: 0.7843 - val_accuracy: 0.7627 Epoch 11/100 71/71 [==============================] - 1s 11ms/step - loss: 0.7440 - accuracy: 0.7582 - val_loss: 0.7831 - val_accuracy: 0.7553 Epoch 12/100 71/71 [==============================] - 1s 11ms/step - loss: 0.6734 - accuracy: 0.7823 - val_loss: 0.7808 - val_accuracy: 0.7563 Epoch 13/100 71/71 [==============================] - 1s 11ms/step - loss: 0.6293 - accuracy: 0.7932 - val_loss: 0.7544 - val_accuracy: 0.7660 Epoch 14/100 71/71 [==============================] - 1s 11ms/step - loss: 0.6017 - accuracy: 0.8073 - val_loss: 0.7128 - val_accuracy: 0.7750 Epoch 15/100 71/71 [==============================] - 1s 11ms/step - loss: 0.5237 - accuracy: 0.8275 - val_loss: 0.8136 - val_accuracy: 0.7530 Epoch 16/100 71/71 [==============================] - 1s 11ms/step - loss: 0.5217 - accuracy: 0.8263 - val_loss: 0.7217 - val_accuracy: 0.7823 Epoch 17/100 71/71 [==============================] - 1s 11ms/step - loss: 0.5057 - accuracy: 0.8389 - val_loss: 0.7837 - val_accuracy: 0.7647 Epoch 18/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4786 - accuracy: 0.8433 - val_loss: 0.6309 - val_accuracy: 0.8127 Epoch 19/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4492 - accuracy: 0.8538 - val_loss: 0.6734 - val_accuracy: 0.8090 Epoch 20/100 71/71 [==============================] - 1s 10ms/step - loss: 0.3936 - accuracy: 0.8693 - val_loss: 0.6954 - val_accuracy: 0.8097 Epoch 21/100 71/71 [==============================] - 1s 10ms/step - loss: 0.4124 - accuracy: 0.8642 - val_loss: 0.6643 - val_accuracy: 0.8123 Epoch 22/100 71/71 [==============================] - 1s 10ms/step - loss: 0.3892 - accuracy: 0.8672 - val_loss: 0.6599 - val_accuracy: 0.8077 Epoch 23/100 71/71 [==============================] - 1s 10ms/step - loss: 0.3329 - accuracy: 0.8922 - val_loss: 0.6557 - val_accuracy: 0.8140 Epoch 24/100 71/71 [==============================] - 1s 10ms/step - loss: 0.3396 - accuracy: 0.8891 - val_loss: 0.6538 - val_accuracy: 0.8233 Epoch 25/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3246 - accuracy: 0.8979 - val_loss: 0.6459 - val_accuracy: 0.8183 Epoch 26/100 71/71 [==============================] - 1s 10ms/step - loss: 0.3298 - accuracy: 0.8870 - val_loss: 0.6830 - val_accuracy: 0.8163 Epoch 27/100 71/71 [==============================] - 1s 10ms/step - loss: 0.3012 - accuracy: 0.9014 - val_loss: 0.6787 - val_accuracy: 0.8150 Epoch 28/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2924 - accuracy: 0.9040 - val_loss: 0.7025 - val_accuracy: 0.8153 Epoch 29/100 71/71 [==============================] - 1s 10ms/step - loss: 0.3000 - accuracy: 0.9003 - val_loss: 0.6542 - val_accuracy: 0.8300 Epoch 30/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2769 - accuracy: 0.9063 - val_loss: 0.7734 - val_accuracy: 0.7937 Epoch 31/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2645 - accuracy: 0.9161 - val_loss: 0.6724 - val_accuracy: 0.8300 Epoch 32/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2609 - accuracy: 0.9175 - val_loss: 0.6507 - val_accuracy: 0.8357 Epoch 33/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2242 - accuracy: 0.9257 - val_loss: 0.6723 - val_accuracy: 0.8377 Epoch 34/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2706 - accuracy: 0.9077 - val_loss: 0.6208 - val_accuracy: 0.8373 Epoch 35/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2209 - accuracy: 0.9263 - val_loss: 0.6679 - val_accuracy: 0.8243 Epoch 36/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2406 - accuracy: 0.9197 - val_loss: 0.6976 - val_accuracy: 0.8250 Epoch 37/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2375 - accuracy: 0.9233 - val_loss: 0.6989 - val_accuracy: 0.8390 Epoch 38/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2252 - accuracy: 0.9262 - val_loss: 0.6868 - val_accuracy: 0.8390 Epoch 39/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2335 - accuracy: 0.9257 - val_loss: 0.6145 - val_accuracy: 0.8467 Epoch 40/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2084 - accuracy: 0.9313 - val_loss: 0.6727 - val_accuracy: 0.8397 Epoch 41/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2240 - accuracy: 0.9253 - val_loss: 0.6869 - val_accuracy: 0.8447 Epoch 42/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2086 - accuracy: 0.9342 - val_loss: 0.7108 - val_accuracy: 0.8253 Epoch 43/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2140 - accuracy: 0.9293 - val_loss: 0.6549 - val_accuracy: 0.8453 Epoch 44/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2007 - accuracy: 0.9344 - val_loss: 0.6509 - val_accuracy: 0.8443 Epoch 45/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1936 - accuracy: 0.9377 - val_loss: 0.7333 - val_accuracy: 0.8307 Epoch 46/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1889 - accuracy: 0.9405 - val_loss: 0.6280 - val_accuracy: 0.8563 Epoch 47/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1762 - accuracy: 0.9424 - val_loss: 0.8140 - val_accuracy: 0.8330 Epoch 48/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2124 - accuracy: 0.9313 - val_loss: 0.6559 - val_accuracy: 0.8433 Epoch 49/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1726 - accuracy: 0.9423 - val_loss: 0.6589 - val_accuracy: 0.8343 Epoch 50/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1796 - accuracy: 0.9433 - val_loss: 0.7510 - val_accuracy: 0.8243 Epoch 51/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1776 - accuracy: 0.9438 - val_loss: 0.6941 - val_accuracy: 0.8507 Epoch 52/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1786 - accuracy: 0.9411 - val_loss: 0.7147 - val_accuracy: 0.8347 Epoch 53/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1680 - accuracy: 0.9469 - val_loss: 0.7685 - val_accuracy: 0.8333 Epoch 54/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1764 - accuracy: 0.9437 - val_loss: 0.7272 - val_accuracy: 0.8380 Epoch 55/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1926 - accuracy: 0.9389 - val_loss: 0.7657 - val_accuracy: 0.8353 Epoch 56/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1680 - accuracy: 0.9441 - val_loss: 0.6910 - val_accuracy: 0.8317 Epoch 57/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1726 - accuracy: 0.9430 - val_loss: 0.7906 - val_accuracy: 0.8337 Epoch 58/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1649 - accuracy: 0.9479 - val_loss: 0.8437 - val_accuracy: 0.8080 Epoch 59/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1674 - accuracy: 0.9445 - val_loss: 0.6572 - val_accuracy: 0.8597 Epoch 60/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1728 - accuracy: 0.9432 - val_loss: 0.7066 - val_accuracy: 0.8480 Epoch 61/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1481 - accuracy: 0.9533 - val_loss: 0.7113 - val_accuracy: 0.8453 Epoch 62/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1591 - accuracy: 0.9499 - val_loss: 0.6479 - val_accuracy: 0.8593 Epoch 63/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1480 - accuracy: 0.9529 - val_loss: 0.7136 - val_accuracy: 0.8530 Epoch 64/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1450 - accuracy: 0.9510 - val_loss: 0.6667 - val_accuracy: 0.8643 Epoch 65/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1347 - accuracy: 0.9566 - val_loss: 0.6383 - val_accuracy: 0.8657 Epoch 66/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1656 - accuracy: 0.9481 - val_loss: 0.7282 - val_accuracy: 0.8570 Epoch 67/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1732 - accuracy: 0.9458 - val_loss: 0.7161 - val_accuracy: 0.8460 Epoch 68/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1414 - accuracy: 0.9567 - val_loss: 0.7386 - val_accuracy: 0.8457 Epoch 69/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1540 - accuracy: 0.9500 - val_loss: 0.8165 - val_accuracy: 0.8253 Epoch 70/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1568 - accuracy: 0.9545 - val_loss: 0.6606 - val_accuracy: 0.8673 Epoch 71/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1475 - accuracy: 0.9516 - val_loss: 0.7083 - val_accuracy: 0.8540 Epoch 72/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1230 - accuracy: 0.9582 - val_loss: 0.7697 - val_accuracy: 0.8473 Epoch 73/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1293 - accuracy: 0.9584 - val_loss: 0.8241 - val_accuracy: 0.8317 Epoch 74/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1538 - accuracy: 0.9519 - val_loss: 0.6790 - val_accuracy: 0.8670 Epoch 75/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1313 - accuracy: 0.9598 - val_loss: 0.7710 - val_accuracy: 0.8313 Epoch 76/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1578 - accuracy: 0.9518 - val_loss: 0.7460 - val_accuracy: 0.8540 Epoch 77/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1473 - accuracy: 0.9575 - val_loss: 0.7031 - val_accuracy: 0.8527 Epoch 78/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1427 - accuracy: 0.9547 - val_loss: 0.7159 - val_accuracy: 0.8587 Epoch 79/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1241 - accuracy: 0.9606 - val_loss: 0.6348 - val_accuracy: 0.8643 Epoch 80/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1218 - accuracy: 0.9612 - val_loss: 0.7069 - val_accuracy: 0.8583 Epoch 81/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1463 - accuracy: 0.9545 - val_loss: 0.7020 - val_accuracy: 0.8497 Epoch 82/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1116 - accuracy: 0.9622 - val_loss: 0.6815 - val_accuracy: 0.8653 Epoch 83/100 71/71 [==============================] - 1s 12ms/step - loss: 0.1237 - accuracy: 0.9596 - val_loss: 0.8469 - val_accuracy: 0.8280 Epoch 84/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1316 - accuracy: 0.9617 - val_loss: 0.7214 - val_accuracy: 0.8670 Epoch 85/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1176 - accuracy: 0.9638 - val_loss: 0.8436 - val_accuracy: 0.8480 Epoch 86/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1361 - accuracy: 0.9570 - val_loss: 0.7351 - val_accuracy: 0.8607 Epoch 87/100 71/71 [==============================] - 1s 12ms/step - loss: 0.1434 - accuracy: 0.9562 - val_loss: 0.6961 - val_accuracy: 0.8643 Epoch 88/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1393 - accuracy: 0.9591 - val_loss: 0.8568 - val_accuracy: 0.8397 Epoch 89/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1462 - accuracy: 0.9584 - val_loss: 0.6518 - val_accuracy: 0.8653 Epoch 90/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1160 - accuracy: 0.9622 - val_loss: 0.7521 - val_accuracy: 0.8557 Epoch 91/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1267 - accuracy: 0.9626 - val_loss: 0.7511 - val_accuracy: 0.8557 Epoch 92/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1215 - accuracy: 0.9633 - val_loss: 0.7235 - val_accuracy: 0.8510 Epoch 93/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1096 - accuracy: 0.9657 - val_loss: 0.7192 - val_accuracy: 0.8630 Epoch 94/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1220 - accuracy: 0.9628 - val_loss: 0.7218 - val_accuracy: 0.8537 Epoch 95/100 71/71 [==============================] - 1s 11ms/step - loss: 0.0984 - accuracy: 0.9687 - val_loss: 0.7360 - val_accuracy: 0.8557 Epoch 96/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1294 - accuracy: 0.9607 - val_loss: 0.7827 - val_accuracy: 0.8583 Epoch 97/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1307 - accuracy: 0.9599 - val_loss: 0.7524 - val_accuracy: 0.8633 Epoch 98/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1171 - accuracy: 0.9651 - val_loss: 0.6775 - val_accuracy: 0.8603 Epoch 99/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1360 - accuracy: 0.9595 - val_loss: 0.7787 - val_accuracy: 0.8500 Epoch 100/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1361 - accuracy: 0.9587 - val_loss: 0.7127 - val_accuracy: 0.8627 Epoch 1/100 71/71 [==============================] - 1s 13ms/step - loss: 2.4072 - accuracy: 0.1961 - val_loss: 2.2090 - val_accuracy: 0.3033 Epoch 2/100 71/71 [==============================] - 1s 10ms/step - loss: 1.9249 - accuracy: 0.3840 - val_loss: 1.9789 - val_accuracy: 0.3713 Epoch 3/100 71/71 [==============================] - 1s 10ms/step - loss: 1.6648 - accuracy: 0.4639 - val_loss: 1.4944 - val_accuracy: 0.5287 Epoch 4/100 71/71 [==============================] - 1s 10ms/step - loss: 1.4804 - accuracy: 0.5318 - val_loss: 1.3250 - val_accuracy: 0.6063 Epoch 5/100 71/71 [==============================] - 1s 10ms/step - loss: 1.3174 - accuracy: 0.5779 - val_loss: 1.2385 - val_accuracy: 0.6247 Epoch 6/100 71/71 [==============================] - 1s 10ms/step - loss: 1.1922 - accuracy: 0.6280 - val_loss: 1.2261 - val_accuracy: 0.6273 Epoch 7/100 71/71 [==============================] - 1s 10ms/step - loss: 1.0692 - accuracy: 0.6642 - val_loss: 1.1371 - val_accuracy: 0.6460 Epoch 8/100 71/71 [==============================] - 1s 11ms/step - loss: 0.9931 - accuracy: 0.6844 - val_loss: 0.9502 - val_accuracy: 0.7077 Epoch 9/100 71/71 [==============================] - 1s 10ms/step - loss: 0.8994 - accuracy: 0.7115 - val_loss: 0.9834 - val_accuracy: 0.6870 Epoch 10/100 71/71 [==============================] - 1s 10ms/step - loss: 0.8142 - accuracy: 0.7375 - val_loss: 0.8658 - val_accuracy: 0.7317 Epoch 11/100 71/71 [==============================] - 1s 10ms/step - loss: 0.7708 - accuracy: 0.7556 - val_loss: 0.8770 - val_accuracy: 0.7330 Epoch 12/100 71/71 [==============================] - 1s 10ms/step - loss: 0.7331 - accuracy: 0.7677 - val_loss: 0.9918 - val_accuracy: 0.7090 Epoch 13/100 71/71 [==============================] - 1s 10ms/step - loss: 0.6578 - accuracy: 0.7848 - val_loss: 0.7605 - val_accuracy: 0.7780 Epoch 14/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5782 - accuracy: 0.8138 - val_loss: 0.7859 - val_accuracy: 0.7660 Epoch 15/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5632 - accuracy: 0.8158 - val_loss: 0.8086 - val_accuracy: 0.7680 Epoch 16/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5185 - accuracy: 0.8309 - val_loss: 0.7728 - val_accuracy: 0.7697 Epoch 17/100 71/71 [==============================] - 1s 10ms/step - loss: 0.4647 - accuracy: 0.8495 - val_loss: 0.7770 - val_accuracy: 0.7707 Epoch 18/100 71/71 [==============================] - 1s 10ms/step - loss: 0.4535 - accuracy: 0.8538 - val_loss: 0.7199 - val_accuracy: 0.7843 Epoch 19/100 71/71 [==============================] - 1s 10ms/step - loss: 0.4540 - accuracy: 0.8532 - val_loss: 0.7768 - val_accuracy: 0.7710 Epoch 20/100 71/71 [==============================] - 1s 10ms/step - loss: 0.4328 - accuracy: 0.8569 - val_loss: 0.9039 - val_accuracy: 0.7417 Epoch 21/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3970 - accuracy: 0.8695 - val_loss: 0.7355 - val_accuracy: 0.7930 Epoch 22/100 71/71 [==============================] - 1s 10ms/step - loss: 0.3915 - accuracy: 0.8732 - val_loss: 0.8229 - val_accuracy: 0.7737 Epoch 23/100 71/71 [==============================] - 1s 10ms/step - loss: 0.3356 - accuracy: 0.8900 - val_loss: 0.7546 - val_accuracy: 0.7880 Epoch 24/100 71/71 [==============================] - 1s 10ms/step - loss: 0.3278 - accuracy: 0.8914 - val_loss: 0.6961 - val_accuracy: 0.8053 Epoch 25/100 71/71 [==============================] - 1s 10ms/step - loss: 0.3700 - accuracy: 0.8775 - val_loss: 0.7190 - val_accuracy: 0.8047 Epoch 26/100 71/71 [==============================] - 1s 10ms/step - loss: 0.3368 - accuracy: 0.8909 - val_loss: 0.7274 - val_accuracy: 0.7997 Epoch 27/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3195 - accuracy: 0.8952 - val_loss: 0.7026 - val_accuracy: 0.8053 Epoch 28/100 71/71 [==============================] - 1s 10ms/step - loss: 0.3054 - accuracy: 0.9006 - val_loss: 0.7886 - val_accuracy: 0.7917 Epoch 29/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2908 - accuracy: 0.9036 - val_loss: 0.6961 - val_accuracy: 0.8130 Epoch 30/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2817 - accuracy: 0.9061 - val_loss: 0.6959 - val_accuracy: 0.8157 Epoch 31/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2572 - accuracy: 0.9154 - val_loss: 0.7062 - val_accuracy: 0.8137 Epoch 32/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2580 - accuracy: 0.9135 - val_loss: 0.7857 - val_accuracy: 0.7963 Epoch 33/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2394 - accuracy: 0.9207 - val_loss: 0.7162 - val_accuracy: 0.8090 Epoch 34/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2380 - accuracy: 0.9200 - val_loss: 0.7807 - val_accuracy: 0.7983 Epoch 35/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2544 - accuracy: 0.9137 - val_loss: 0.7078 - val_accuracy: 0.8147 Epoch 36/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2645 - accuracy: 0.9122 - val_loss: 0.8623 - val_accuracy: 0.7937 Epoch 37/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2344 - accuracy: 0.9220 - val_loss: 0.7672 - val_accuracy: 0.7977 Epoch 38/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2266 - accuracy: 0.9239 - val_loss: 0.7165 - val_accuracy: 0.8133 Epoch 39/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2167 - accuracy: 0.9249 - val_loss: 0.7632 - val_accuracy: 0.8043 Epoch 40/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2102 - accuracy: 0.9312 - val_loss: 0.7200 - val_accuracy: 0.8143 Epoch 41/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2109 - accuracy: 0.9272 - val_loss: 0.7445 - val_accuracy: 0.8100 Epoch 42/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2128 - accuracy: 0.9297 - val_loss: 0.8110 - val_accuracy: 0.8050 Epoch 43/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1906 - accuracy: 0.9368 - val_loss: 0.8060 - val_accuracy: 0.7983 Epoch 44/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2187 - accuracy: 0.9288 - val_loss: 0.7416 - val_accuracy: 0.8237 Epoch 45/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1916 - accuracy: 0.9383 - val_loss: 0.7505 - val_accuracy: 0.8123 Epoch 46/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2001 - accuracy: 0.9331 - val_loss: 0.7094 - val_accuracy: 0.8267 Epoch 47/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1902 - accuracy: 0.9373 - val_loss: 0.7550 - val_accuracy: 0.8160 Epoch 48/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1822 - accuracy: 0.9386 - val_loss: 0.7210 - val_accuracy: 0.8230 Epoch 49/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1699 - accuracy: 0.9413 - val_loss: 0.7876 - val_accuracy: 0.8080 Epoch 50/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1763 - accuracy: 0.9414 - val_loss: 0.7348 - val_accuracy: 0.8197 Epoch 51/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1589 - accuracy: 0.9459 - val_loss: 0.7655 - val_accuracy: 0.8193 Epoch 52/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1756 - accuracy: 0.9416 - val_loss: 0.8818 - val_accuracy: 0.7957 Epoch 53/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1858 - accuracy: 0.9375 - val_loss: 0.9944 - val_accuracy: 0.7797 Epoch 54/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1945 - accuracy: 0.9362 - val_loss: 0.8122 - val_accuracy: 0.8117 Epoch 55/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1744 - accuracy: 0.9402 - val_loss: 0.7977 - val_accuracy: 0.8103 Epoch 56/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1639 - accuracy: 0.9462 - val_loss: 0.7668 - val_accuracy: 0.8243 Epoch 57/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1713 - accuracy: 0.9423 - val_loss: 0.7962 - val_accuracy: 0.8060 Epoch 58/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1472 - accuracy: 0.9509 - val_loss: 0.8090 - val_accuracy: 0.8157 Epoch 59/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1807 - accuracy: 0.9375 - val_loss: 0.7460 - val_accuracy: 0.8300 Epoch 60/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1674 - accuracy: 0.9447 - val_loss: 0.7533 - val_accuracy: 0.8277 Epoch 61/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1441 - accuracy: 0.9536 - val_loss: 0.9012 - val_accuracy: 0.7930 Epoch 62/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1524 - accuracy: 0.9490 - val_loss: 0.8745 - val_accuracy: 0.8083 Epoch 63/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1400 - accuracy: 0.9549 - val_loss: 0.7800 - val_accuracy: 0.8173 Epoch 64/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1472 - accuracy: 0.9525 - val_loss: 0.7854 - val_accuracy: 0.8260 Epoch 65/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1332 - accuracy: 0.9560 - val_loss: 0.7895 - val_accuracy: 0.8250 Epoch 66/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1605 - accuracy: 0.9471 - val_loss: 0.7985 - val_accuracy: 0.8197 Epoch 67/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1437 - accuracy: 0.9529 - val_loss: 0.8457 - val_accuracy: 0.8147 Epoch 68/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1436 - accuracy: 0.9507 - val_loss: 0.8559 - val_accuracy: 0.8047 Epoch 69/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1532 - accuracy: 0.9483 - val_loss: 0.8230 - val_accuracy: 0.8220 Epoch 70/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1462 - accuracy: 0.9523 - val_loss: 0.7968 - val_accuracy: 0.8220 Epoch 71/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1304 - accuracy: 0.9562 - val_loss: 0.9136 - val_accuracy: 0.7977 Epoch 72/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1301 - accuracy: 0.9584 - val_loss: 0.7644 - val_accuracy: 0.8250 Epoch 73/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1243 - accuracy: 0.9575 - val_loss: 0.7805 - val_accuracy: 0.8340 Epoch 74/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1401 - accuracy: 0.9527 - val_loss: 0.8400 - val_accuracy: 0.8160 Epoch 75/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1364 - accuracy: 0.9555 - val_loss: 0.7919 - val_accuracy: 0.8247 Epoch 76/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1379 - accuracy: 0.9537 - val_loss: 0.8497 - val_accuracy: 0.8170 Epoch 77/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1383 - accuracy: 0.9539 - val_loss: 0.7957 - val_accuracy: 0.8263 Epoch 78/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1135 - accuracy: 0.9625 - val_loss: 0.8637 - val_accuracy: 0.8183 Epoch 79/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1440 - accuracy: 0.9523 - val_loss: 0.8169 - val_accuracy: 0.8227 Epoch 80/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1320 - accuracy: 0.9528 - val_loss: 0.7878 - val_accuracy: 0.8190 Epoch 81/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1438 - accuracy: 0.9527 - val_loss: 0.8059 - val_accuracy: 0.8153 Epoch 82/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1266 - accuracy: 0.9570 - val_loss: 1.0969 - val_accuracy: 0.7590 Epoch 83/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1348 - accuracy: 0.9574 - val_loss: 0.9198 - val_accuracy: 0.7947 Epoch 84/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1160 - accuracy: 0.9620 - val_loss: 0.8218 - val_accuracy: 0.8187 Epoch 85/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1029 - accuracy: 0.9664 - val_loss: 0.7867 - val_accuracy: 0.8300 Epoch 86/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1127 - accuracy: 0.9609 - val_loss: 0.7863 - val_accuracy: 0.8287 Epoch 87/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1143 - accuracy: 0.9619 - val_loss: 0.8157 - val_accuracy: 0.8193 Epoch 88/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1106 - accuracy: 0.9641 - val_loss: 0.7232 - val_accuracy: 0.8373 Epoch 89/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1041 - accuracy: 0.9661 - val_loss: 0.7473 - val_accuracy: 0.8397 Epoch 90/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1225 - accuracy: 0.9582 - val_loss: 0.8622 - val_accuracy: 0.8107 Epoch 91/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1190 - accuracy: 0.9603 - val_loss: 0.7345 - val_accuracy: 0.8320 Epoch 92/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1248 - accuracy: 0.9600 - val_loss: 0.7379 - val_accuracy: 0.8443 Epoch 93/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1120 - accuracy: 0.9649 - val_loss: 0.7782 - val_accuracy: 0.8273 Epoch 94/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1071 - accuracy: 0.9636 - val_loss: 0.7798 - val_accuracy: 0.8270 Epoch 95/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1171 - accuracy: 0.9603 - val_loss: 0.8139 - val_accuracy: 0.8263 Epoch 96/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1210 - accuracy: 0.9613 - val_loss: 0.7532 - val_accuracy: 0.8327 Epoch 97/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1133 - accuracy: 0.9629 - val_loss: 0.7477 - val_accuracy: 0.8340 Epoch 98/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1263 - accuracy: 0.9574 - val_loss: 0.8510 - val_accuracy: 0.8177 Epoch 99/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1003 - accuracy: 0.9696 - val_loss: 0.7341 - val_accuracy: 0.8473 Epoch 100/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0985 - accuracy: 0.9665 - val_loss: 0.7811 - val_accuracy: 0.8330 Epoch 1/100 71/71 [==============================] - 1s 12ms/step - loss: 2.6143 - accuracy: 0.1006 - val_loss: 2.6010 - val_accuracy: 0.1010 Epoch 2/100 71/71 [==============================] - 1s 10ms/step - loss: 2.4543 - accuracy: 0.1499 - val_loss: 2.4069 - val_accuracy: 0.1797 Epoch 3/100 71/71 [==============================] - 1s 10ms/step - loss: 2.2516 - accuracy: 0.2127 - val_loss: 2.1411 - val_accuracy: 0.2973 Epoch 4/100 71/71 [==============================] - 1s 10ms/step - loss: 1.9393 - accuracy: 0.3507 - val_loss: 1.8618 - val_accuracy: 0.4030 Epoch 5/100 71/71 [==============================] - 1s 10ms/step - loss: 1.7305 - accuracy: 0.4310 - val_loss: 1.5628 - val_accuracy: 0.4813 Epoch 6/100 71/71 [==============================] - 1s 11ms/step - loss: 1.5562 - accuracy: 0.4866 - val_loss: 1.3725 - val_accuracy: 0.5580 Epoch 7/100 71/71 [==============================] - 1s 11ms/step - loss: 1.4105 - accuracy: 0.5382 - val_loss: 1.2379 - val_accuracy: 0.5997 Epoch 8/100 71/71 [==============================] - 1s 10ms/step - loss: 1.2536 - accuracy: 0.5872 - val_loss: 1.1352 - val_accuracy: 0.6347 Epoch 9/100 71/71 [==============================] - 1s 10ms/step - loss: 1.1816 - accuracy: 0.6139 - val_loss: 1.1123 - val_accuracy: 0.6357 Epoch 10/100 71/71 [==============================] - 1s 10ms/step - loss: 1.0667 - accuracy: 0.6512 - val_loss: 1.0638 - val_accuracy: 0.6557 Epoch 11/100 71/71 [==============================] - 1s 10ms/step - loss: 0.9811 - accuracy: 0.6763 - val_loss: 0.8612 - val_accuracy: 0.7207 Epoch 12/100 71/71 [==============================] - 1s 10ms/step - loss: 0.9031 - accuracy: 0.7096 - val_loss: 0.8671 - val_accuracy: 0.7243 Epoch 13/100 71/71 [==============================] - 1s 10ms/step - loss: 0.8449 - accuracy: 0.7288 - val_loss: 0.7704 - val_accuracy: 0.7603 Epoch 14/100 71/71 [==============================] - 1s 10ms/step - loss: 0.7587 - accuracy: 0.7553 - val_loss: 0.6344 - val_accuracy: 0.7947 Epoch 15/100 71/71 [==============================] - 1s 10ms/step - loss: 0.6799 - accuracy: 0.7772 - val_loss: 0.5884 - val_accuracy: 0.8193 Epoch 16/100 71/71 [==============================] - 1s 10ms/step - loss: 0.6388 - accuracy: 0.7916 - val_loss: 0.5195 - val_accuracy: 0.8437 Epoch 17/100 71/71 [==============================] - 1s 10ms/step - loss: 0.6136 - accuracy: 0.8042 - val_loss: 0.5482 - val_accuracy: 0.8240 Epoch 18/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5651 - accuracy: 0.8227 - val_loss: 0.5203 - val_accuracy: 0.8370 Epoch 19/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5358 - accuracy: 0.8267 - val_loss: 0.6297 - val_accuracy: 0.7910 Epoch 20/100 71/71 [==============================] - 1s 10ms/step - loss: 0.5084 - accuracy: 0.8407 - val_loss: 0.4364 - val_accuracy: 0.8683 Epoch 21/100 71/71 [==============================] - 1s 10ms/step - loss: 0.4628 - accuracy: 0.8517 - val_loss: 0.4023 - val_accuracy: 0.8720 Epoch 22/100 71/71 [==============================] - 1s 10ms/step - loss: 0.4364 - accuracy: 0.8601 - val_loss: 0.4776 - val_accuracy: 0.8510 Epoch 23/100 71/71 [==============================] - 1s 10ms/step - loss: 0.4144 - accuracy: 0.8686 - val_loss: 0.3715 - val_accuracy: 0.8783 Epoch 24/100 71/71 [==============================] - 1s 10ms/step - loss: 0.3938 - accuracy: 0.8739 - val_loss: 0.3553 - val_accuracy: 0.8880 Epoch 25/100 71/71 [==============================] - 1s 10ms/step - loss: 0.3597 - accuracy: 0.8790 - val_loss: 0.3454 - val_accuracy: 0.8917 Epoch 26/100 71/71 [==============================] - 1s 9ms/step - loss: 0.3217 - accuracy: 0.8974 - val_loss: 0.3826 - val_accuracy: 0.8807 Epoch 27/100 71/71 [==============================] - 1s 10ms/step - loss: 0.3439 - accuracy: 0.8893 - val_loss: 0.3458 - val_accuracy: 0.8930 Epoch 28/100 71/71 [==============================] - 1s 10ms/step - loss: 0.3260 - accuracy: 0.8932 - val_loss: 0.3314 - val_accuracy: 0.9007 Epoch 29/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2994 - accuracy: 0.9049 - val_loss: 0.3149 - val_accuracy: 0.9030 Epoch 30/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2802 - accuracy: 0.9102 - val_loss: 0.3301 - val_accuracy: 0.9013 Epoch 31/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2941 - accuracy: 0.9072 - val_loss: 0.3140 - val_accuracy: 0.9077 Epoch 32/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2563 - accuracy: 0.9158 - val_loss: 0.3514 - val_accuracy: 0.9007 Epoch 33/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2635 - accuracy: 0.9147 - val_loss: 0.3494 - val_accuracy: 0.8913 Epoch 34/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2585 - accuracy: 0.9178 - val_loss: 0.3048 - val_accuracy: 0.9093 Epoch 35/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2605 - accuracy: 0.9163 - val_loss: 0.2799 - val_accuracy: 0.9160 Epoch 36/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2342 - accuracy: 0.9273 - val_loss: 0.2943 - val_accuracy: 0.9033 Epoch 37/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2140 - accuracy: 0.9339 - val_loss: 0.2801 - val_accuracy: 0.9150 Epoch 38/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2063 - accuracy: 0.9331 - val_loss: 0.2801 - val_accuracy: 0.9187 Epoch 39/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2194 - accuracy: 0.9303 - val_loss: 0.3038 - val_accuracy: 0.9073 Epoch 40/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2161 - accuracy: 0.9284 - val_loss: 0.3721 - val_accuracy: 0.8877 Epoch 41/100 71/71 [==============================] - 1s 10ms/step - loss: 0.2104 - accuracy: 0.9345 - val_loss: 0.2714 - val_accuracy: 0.9180 Epoch 42/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1830 - accuracy: 0.9437 - val_loss: 0.3010 - val_accuracy: 0.9083 Epoch 43/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1785 - accuracy: 0.9404 - val_loss: 0.2658 - val_accuracy: 0.9240 Epoch 44/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1773 - accuracy: 0.9417 - val_loss: 0.3313 - val_accuracy: 0.9030 Epoch 45/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1886 - accuracy: 0.9430 - val_loss: 0.2730 - val_accuracy: 0.9257 Epoch 46/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1817 - accuracy: 0.9426 - val_loss: 0.2534 - val_accuracy: 0.9250 Epoch 47/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1616 - accuracy: 0.9492 - val_loss: 0.2531 - val_accuracy: 0.9303 Epoch 48/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1534 - accuracy: 0.9506 - val_loss: 0.2949 - val_accuracy: 0.9103 Epoch 49/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1509 - accuracy: 0.9514 - val_loss: 0.2850 - val_accuracy: 0.9237 Epoch 50/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1500 - accuracy: 0.9514 - val_loss: 0.2487 - val_accuracy: 0.9273 Epoch 51/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1364 - accuracy: 0.9562 - val_loss: 0.3012 - val_accuracy: 0.9180 Epoch 52/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1574 - accuracy: 0.9513 - val_loss: 0.2774 - val_accuracy: 0.9233 Epoch 53/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1501 - accuracy: 0.9497 - val_loss: 0.3079 - val_accuracy: 0.9130 Epoch 54/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1585 - accuracy: 0.9489 - val_loss: 0.2628 - val_accuracy: 0.9283 Epoch 55/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1435 - accuracy: 0.9543 - val_loss: 0.2644 - val_accuracy: 0.9307 Epoch 56/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1478 - accuracy: 0.9498 - val_loss: 0.2616 - val_accuracy: 0.9300 Epoch 57/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1372 - accuracy: 0.9559 - val_loss: 0.2801 - val_accuracy: 0.9273 Epoch 58/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1397 - accuracy: 0.9562 - val_loss: 0.2667 - val_accuracy: 0.9283 Epoch 59/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1324 - accuracy: 0.9584 - val_loss: 0.2459 - val_accuracy: 0.9340 Epoch 60/100 71/71 [==============================] - 1s 9ms/step - loss: 0.1346 - accuracy: 0.9593 - val_loss: 0.2609 - val_accuracy: 0.9320 Epoch 61/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1472 - accuracy: 0.9554 - val_loss: 0.2665 - val_accuracy: 0.9277 Epoch 62/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1344 - accuracy: 0.9581 - val_loss: 0.2863 - val_accuracy: 0.9263 Epoch 63/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1156 - accuracy: 0.9636 - val_loss: 0.2543 - val_accuracy: 0.9323 Epoch 64/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1218 - accuracy: 0.9625 - val_loss: 0.2522 - val_accuracy: 0.9333 Epoch 65/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1389 - accuracy: 0.9518 - val_loss: 0.2623 - val_accuracy: 0.9350 Epoch 66/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1107 - accuracy: 0.9647 - val_loss: 0.2393 - val_accuracy: 0.9383 Epoch 67/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1148 - accuracy: 0.9643 - val_loss: 0.2182 - val_accuracy: 0.9430 Epoch 68/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1170 - accuracy: 0.9634 - val_loss: 0.2508 - val_accuracy: 0.9373 Epoch 69/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1068 - accuracy: 0.9692 - val_loss: 0.2437 - val_accuracy: 0.9370 Epoch 70/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1152 - accuracy: 0.9647 - val_loss: 0.2482 - val_accuracy: 0.9353 Epoch 71/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1101 - accuracy: 0.9644 - val_loss: 0.2502 - val_accuracy: 0.9387 Epoch 72/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0955 - accuracy: 0.9688 - val_loss: 0.2336 - val_accuracy: 0.9397 Epoch 73/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1085 - accuracy: 0.9678 - val_loss: 0.2389 - val_accuracy: 0.9347 Epoch 74/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1004 - accuracy: 0.9683 - val_loss: 0.2850 - val_accuracy: 0.9330 Epoch 75/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1199 - accuracy: 0.9646 - val_loss: 0.2415 - val_accuracy: 0.9377 Epoch 76/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1197 - accuracy: 0.9630 - val_loss: 0.2479 - val_accuracy: 0.9360 Epoch 77/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0968 - accuracy: 0.9698 - val_loss: 0.2667 - val_accuracy: 0.9373 Epoch 78/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1098 - accuracy: 0.9670 - val_loss: 0.2796 - val_accuracy: 0.9337 Epoch 79/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0907 - accuracy: 0.9712 - val_loss: 0.2708 - val_accuracy: 0.9317 Epoch 80/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0877 - accuracy: 0.9730 - val_loss: 0.2468 - val_accuracy: 0.9417 Epoch 81/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1006 - accuracy: 0.9671 - val_loss: 0.2768 - val_accuracy: 0.9320 Epoch 82/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0920 - accuracy: 0.9702 - val_loss: 0.2991 - val_accuracy: 0.9263 Epoch 83/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1161 - accuracy: 0.9632 - val_loss: 0.2523 - val_accuracy: 0.9407 Epoch 84/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0965 - accuracy: 0.9703 - val_loss: 0.2582 - val_accuracy: 0.9373 Epoch 85/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0979 - accuracy: 0.9704 - val_loss: 0.2951 - val_accuracy: 0.9277 Epoch 86/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1042 - accuracy: 0.9669 - val_loss: 0.2598 - val_accuracy: 0.9337 Epoch 87/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1099 - accuracy: 0.9665 - val_loss: 0.2619 - val_accuracy: 0.9380 Epoch 88/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0971 - accuracy: 0.9683 - val_loss: 0.2289 - val_accuracy: 0.9413 Epoch 89/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0912 - accuracy: 0.9723 - val_loss: 0.2495 - val_accuracy: 0.9443 Epoch 90/100 71/71 [==============================] - 1s 10ms/step - loss: 0.1024 - accuracy: 0.9685 - val_loss: 0.2513 - val_accuracy: 0.9373 Epoch 91/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0970 - accuracy: 0.9721 - val_loss: 0.2820 - val_accuracy: 0.9307 Epoch 92/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0910 - accuracy: 0.9708 - val_loss: 0.2255 - val_accuracy: 0.9413 Epoch 93/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0732 - accuracy: 0.9755 - val_loss: 0.2566 - val_accuracy: 0.9383 Epoch 94/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0944 - accuracy: 0.9699 - val_loss: 0.2552 - val_accuracy: 0.9387 Epoch 95/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0897 - accuracy: 0.9705 - val_loss: 0.2572 - val_accuracy: 0.9393 Epoch 96/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0886 - accuracy: 0.9736 - val_loss: 0.2564 - val_accuracy: 0.9397 Epoch 97/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0876 - accuracy: 0.9720 - val_loss: 0.2378 - val_accuracy: 0.9453 Epoch 98/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0734 - accuracy: 0.9766 - val_loss: 0.2466 - val_accuracy: 0.9420 Epoch 99/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0779 - accuracy: 0.9764 - val_loss: 0.2707 - val_accuracy: 0.9347 Epoch 100/100 71/71 [==============================] - 1s 10ms/step - loss: 0.0823 - accuracy: 0.9721 - val_loss: 0.2632 - val_accuracy: 0.9357 Epoch 1/100 71/71 [==============================] - 1s 13ms/step - loss: 2.7538 - accuracy: 0.0882 - val_loss: 2.7657 - val_accuracy: 0.0667 Epoch 2/100 71/71 [==============================] - 1s 11ms/step - loss: 2.6610 - accuracy: 0.0929 - val_loss: 2.7582 - val_accuracy: 0.0667 Epoch 3/100 71/71 [==============================] - 1s 11ms/step - loss: 2.6508 - accuracy: 0.0958 - val_loss: 2.7539 - val_accuracy: 0.0667 Epoch 4/100 71/71 [==============================] - 1s 11ms/step - loss: 2.6466 - accuracy: 0.0975 - val_loss: 2.7727 - val_accuracy: 0.0667 Epoch 5/100 71/71 [==============================] - 1s 10ms/step - loss: 2.6445 - accuracy: 0.0963 - val_loss: 2.7635 - val_accuracy: 0.0667 Epoch 6/100 71/71 [==============================] - 1s 10ms/step - loss: 2.6463 - accuracy: 0.0969 - val_loss: 2.7829 - val_accuracy: 0.0667 Epoch 7/100 71/71 [==============================] - 1s 11ms/step - loss: 2.6436 - accuracy: 0.0988 - val_loss: 2.7792 - val_accuracy: 0.0667 Epoch 8/100 71/71 [==============================] - 1s 10ms/step - loss: 2.6439 - accuracy: 0.0989 - val_loss: 2.7685 - val_accuracy: 0.0667 Epoch 9/100 71/71 [==============================] - 1s 10ms/step - loss: 2.6417 - accuracy: 0.0960 - val_loss: 2.7839 - val_accuracy: 0.0667 Epoch 10/100 71/71 [==============================] - 1s 11ms/step - loss: 2.6420 - accuracy: 0.1016 - val_loss: 2.7518 - val_accuracy: 0.0667 Epoch 11/100 71/71 [==============================] - 1s 11ms/step - loss: 2.6418 - accuracy: 0.1037 - val_loss: 2.7834 - val_accuracy: 0.0667 Epoch 12/100 71/71 [==============================] - 1s 11ms/step - loss: 2.6424 - accuracy: 0.1002 - val_loss: 2.7550 - val_accuracy: 0.0667 Epoch 13/100 71/71 [==============================] - 1s 11ms/step - loss: 2.6395 - accuracy: 0.1036 - val_loss: 2.7566 - val_accuracy: 0.0667 Epoch 14/100 71/71 [==============================] - 1s 10ms/step - loss: 2.6405 - accuracy: 0.1060 - val_loss: 2.7670 - val_accuracy: 0.0667 Epoch 15/100 71/71 [==============================] - 1s 10ms/step - loss: 2.6397 - accuracy: 0.1004 - val_loss: 2.7750 - val_accuracy: 0.0667 Epoch 16/100 71/71 [==============================] - 1s 10ms/step - loss: 2.6376 - accuracy: 0.1078 - val_loss: 2.7696 - val_accuracy: 0.0990 Epoch 17/100 71/71 [==============================] - 1s 10ms/step - loss: 2.5666 - accuracy: 0.1375 - val_loss: 2.6691 - val_accuracy: 0.1067 Epoch 18/100 71/71 [==============================] - 1s 11ms/step - loss: 2.4981 - accuracy: 0.1552 - val_loss: 2.5724 - val_accuracy: 0.1307 Epoch 19/100 71/71 [==============================] - 1s 10ms/step - loss: 2.4638 - accuracy: 0.1680 - val_loss: 2.5348 - val_accuracy: 0.1530 Epoch 20/100 71/71 [==============================] - 1s 10ms/step - loss: 2.4343 - accuracy: 0.1804 - val_loss: 2.5155 - val_accuracy: 0.1480 Epoch 21/100 71/71 [==============================] - 1s 10ms/step - loss: 2.4040 - accuracy: 0.1886 - val_loss: 2.4557 - val_accuracy: 0.1733 Epoch 22/100 71/71 [==============================] - 1s 11ms/step - loss: 2.3392 - accuracy: 0.2246 - val_loss: 2.3760 - val_accuracy: 0.2003 Epoch 23/100 71/71 [==============================] - 1s 10ms/step - loss: 2.2681 - accuracy: 0.2531 - val_loss: 2.3090 - val_accuracy: 0.2200 Epoch 24/100 71/71 [==============================] - 1s 10ms/step - loss: 2.2146 - accuracy: 0.2750 - val_loss: 2.2431 - val_accuracy: 0.2350 Epoch 25/100 71/71 [==============================] - 1s 11ms/step - loss: 2.1563 - accuracy: 0.2854 - val_loss: 2.1797 - val_accuracy: 0.2647 Epoch 26/100 71/71 [==============================] - 1s 10ms/step - loss: 2.0980 - accuracy: 0.3091 - val_loss: 2.1218 - val_accuracy: 0.2950 Epoch 27/100 71/71 [==============================] - 1s 11ms/step - loss: 2.0588 - accuracy: 0.3227 - val_loss: 2.0512 - val_accuracy: 0.3093 Epoch 28/100 71/71 [==============================] - 1s 10ms/step - loss: 2.0013 - accuracy: 0.3416 - val_loss: 2.0082 - val_accuracy: 0.3250 Epoch 29/100 71/71 [==============================] - 1s 11ms/step - loss: 1.9599 - accuracy: 0.3607 - val_loss: 1.9391 - val_accuracy: 0.3597 Epoch 30/100 71/71 [==============================] - 1s 10ms/step - loss: 1.9218 - accuracy: 0.3758 - val_loss: 1.9068 - val_accuracy: 0.3727 Epoch 31/100 71/71 [==============================] - 1s 10ms/step - loss: 1.8703 - accuracy: 0.3934 - val_loss: 1.8483 - val_accuracy: 0.3917 Epoch 32/100 71/71 [==============================] - 1s 11ms/step - loss: 1.8343 - accuracy: 0.4074 - val_loss: 1.8198 - val_accuracy: 0.4043 Epoch 33/100 71/71 [==============================] - 1s 10ms/step - loss: 1.7986 - accuracy: 0.4146 - val_loss: 1.7580 - val_accuracy: 0.4293 Epoch 34/100 71/71 [==============================] - 1s 10ms/step - loss: 1.7511 - accuracy: 0.4302 - val_loss: 1.7387 - val_accuracy: 0.4343 Epoch 35/100 71/71 [==============================] - 1s 11ms/step - loss: 1.7278 - accuracy: 0.4404 - val_loss: 1.6846 - val_accuracy: 0.4577 Epoch 36/100 71/71 [==============================] - 1s 11ms/step - loss: 1.6833 - accuracy: 0.4603 - val_loss: 1.6778 - val_accuracy: 0.4483 Epoch 37/100 71/71 [==============================] - 1s 10ms/step - loss: 1.6649 - accuracy: 0.4631 - val_loss: 1.6388 - val_accuracy: 0.4620 Epoch 38/100 71/71 [==============================] - 1s 10ms/step - loss: 1.6113 - accuracy: 0.4760 - val_loss: 1.5991 - val_accuracy: 0.4830 Epoch 39/100 71/71 [==============================] - 1s 11ms/step - loss: 1.5748 - accuracy: 0.4894 - val_loss: 1.5626 - val_accuracy: 0.4937 Epoch 40/100 71/71 [==============================] - 1s 10ms/step - loss: 1.5494 - accuracy: 0.5096 - val_loss: 1.5341 - val_accuracy: 0.5023 Epoch 41/100 71/71 [==============================] - 1s 10ms/step - loss: 1.5209 - accuracy: 0.5081 - val_loss: 1.4962 - val_accuracy: 0.5153 Epoch 42/100 71/71 [==============================] - 1s 11ms/step - loss: 1.5075 - accuracy: 0.5158 - val_loss: 1.4885 - val_accuracy: 0.5170 Epoch 43/100 71/71 [==============================] - 1s 11ms/step - loss: 1.4626 - accuracy: 0.5265 - val_loss: 1.4634 - val_accuracy: 0.5180 Epoch 44/100 71/71 [==============================] - 1s 11ms/step - loss: 1.4443 - accuracy: 0.5319 - val_loss: 1.4401 - val_accuracy: 0.5327 Epoch 45/100 71/71 [==============================] - 1s 10ms/step - loss: 1.4158 - accuracy: 0.5471 - val_loss: 1.3892 - val_accuracy: 0.5497 Epoch 46/100 71/71 [==============================] - 1s 11ms/step - loss: 1.3759 - accuracy: 0.5514 - val_loss: 1.3878 - val_accuracy: 0.5520 Epoch 47/100 71/71 [==============================] - 1s 11ms/step - loss: 1.3661 - accuracy: 0.5556 - val_loss: 1.3577 - val_accuracy: 0.5627 Epoch 48/100 71/71 [==============================] - 1s 10ms/step - loss: 1.3414 - accuracy: 0.5639 - val_loss: 1.3048 - val_accuracy: 0.5767 Epoch 49/100 71/71 [==============================] - 1s 11ms/step - loss: 1.3073 - accuracy: 0.5774 - val_loss: 1.2940 - val_accuracy: 0.5817 Epoch 50/100 71/71 [==============================] - 1s 10ms/step - loss: 1.2855 - accuracy: 0.5839 - val_loss: 1.2799 - val_accuracy: 0.5880 Epoch 51/100 71/71 [==============================] - 1s 10ms/step - loss: 1.2619 - accuracy: 0.5977 - val_loss: 1.2717 - val_accuracy: 0.5897 Epoch 52/100 71/71 [==============================] - 1s 11ms/step - loss: 1.2521 - accuracy: 0.5961 - val_loss: 1.2528 - val_accuracy: 0.6047 Epoch 53/100 71/71 [==============================] - 1s 11ms/step - loss: 1.2103 - accuracy: 0.6074 - val_loss: 1.1967 - val_accuracy: 0.6250 Epoch 54/100 71/71 [==============================] - 1s 10ms/step - loss: 1.1905 - accuracy: 0.6140 - val_loss: 1.1924 - val_accuracy: 0.6213 Epoch 55/100 71/71 [==============================] - 1s 10ms/step - loss: 1.1654 - accuracy: 0.6248 - val_loss: 1.1945 - val_accuracy: 0.6180 Epoch 56/100 71/71 [==============================] - 1s 11ms/step - loss: 1.1334 - accuracy: 0.6348 - val_loss: 1.1591 - val_accuracy: 0.6380 Epoch 57/100 71/71 [==============================] - 1s 10ms/step - loss: 1.1303 - accuracy: 0.6381 - val_loss: 1.1319 - val_accuracy: 0.6470 Epoch 58/100 71/71 [==============================] - 1s 10ms/step - loss: 1.1060 - accuracy: 0.6441 - val_loss: 1.1006 - val_accuracy: 0.6590 Epoch 59/100 71/71 [==============================] - 1s 11ms/step - loss: 1.0759 - accuracy: 0.6536 - val_loss: 1.1311 - val_accuracy: 0.6473 Epoch 60/100 71/71 [==============================] - 1s 10ms/step - loss: 1.0606 - accuracy: 0.6611 - val_loss: 1.0807 - val_accuracy: 0.6720 Epoch 61/100 71/71 [==============================] - 1s 11ms/step - loss: 1.0466 - accuracy: 0.6654 - val_loss: 1.0683 - val_accuracy: 0.6760 Epoch 62/100 71/71 [==============================] - 1s 11ms/step - loss: 1.0261 - accuracy: 0.6704 - val_loss: 1.0500 - val_accuracy: 0.6850 Epoch 63/100 71/71 [==============================] - 1s 10ms/step - loss: 0.9980 - accuracy: 0.6802 - val_loss: 1.0226 - val_accuracy: 0.6883 Epoch 64/100 71/71 [==============================] - 1s 10ms/step - loss: 0.9839 - accuracy: 0.6871 - val_loss: 1.0147 - val_accuracy: 0.6957 Epoch 65/100 71/71 [==============================] - 1s 10ms/step - loss: 0.9744 - accuracy: 0.6914 - val_loss: 1.0180 - val_accuracy: 0.6890 Epoch 66/100 71/71 [==============================] - 1s 11ms/step - loss: 0.9521 - accuracy: 0.6943 - val_loss: 0.9947 - val_accuracy: 0.6930 Epoch 67/100 71/71 [==============================] - 1s 10ms/step - loss: 0.9343 - accuracy: 0.6982 - val_loss: 0.9843 - val_accuracy: 0.7040 Epoch 68/100 71/71 [==============================] - 1s 10ms/step - loss: 0.9167 - accuracy: 0.7033 - val_loss: 0.9601 - val_accuracy: 0.7107 Epoch 69/100 71/71 [==============================] - 1s 11ms/step - loss: 0.9015 - accuracy: 0.7121 - val_loss: 0.9613 - val_accuracy: 0.7110 Epoch 70/100 71/71 [==============================] - 1s 10ms/step - loss: 0.8778 - accuracy: 0.7213 - val_loss: 0.9711 - val_accuracy: 0.7003 Epoch 71/100 71/71 [==============================] - 1s 10ms/step - loss: 0.8504 - accuracy: 0.7255 - val_loss: 0.9376 - val_accuracy: 0.7180 Epoch 72/100 71/71 [==============================] - 1s 11ms/step - loss: 0.8594 - accuracy: 0.7256 - val_loss: 0.9186 - val_accuracy: 0.7167 Epoch 73/100 71/71 [==============================] - 1s 10ms/step - loss: 0.8266 - accuracy: 0.7348 - val_loss: 0.9104 - val_accuracy: 0.7233 Epoch 74/100 71/71 [==============================] - 1s 10ms/step - loss: 0.8105 - accuracy: 0.7434 - val_loss: 0.8939 - val_accuracy: 0.7290 Epoch 75/100 71/71 [==============================] - 1s 11ms/step - loss: 0.8078 - accuracy: 0.7381 - val_loss: 0.8988 - val_accuracy: 0.7267 Epoch 76/100 71/71 [==============================] - 1s 11ms/step - loss: 0.7654 - accuracy: 0.7570 - val_loss: 0.8781 - val_accuracy: 0.7333 Epoch 77/100 71/71 [==============================] - 1s 11ms/step - loss: 0.7743 - accuracy: 0.7547 - val_loss: 0.8752 - val_accuracy: 0.7373 Epoch 78/100 71/71 [==============================] - 1s 11ms/step - loss: 0.7594 - accuracy: 0.7562 - val_loss: 0.8582 - val_accuracy: 0.7363 Epoch 79/100 71/71 [==============================] - 1s 10ms/step - loss: 0.7528 - accuracy: 0.7544 - val_loss: 0.8771 - val_accuracy: 0.7327 Epoch 80/100 71/71 [==============================] - 1s 10ms/step - loss: 0.7421 - accuracy: 0.7609 - val_loss: 0.8555 - val_accuracy: 0.7363 Epoch 81/100 71/71 [==============================] - 1s 11ms/step - loss: 0.7141 - accuracy: 0.7706 - val_loss: 0.8400 - val_accuracy: 0.7460 Epoch 82/100 71/71 [==============================] - 1s 10ms/step - loss: 0.7104 - accuracy: 0.7700 - val_loss: 0.8468 - val_accuracy: 0.7483 Epoch 83/100 71/71 [==============================] - 1s 11ms/step - loss: 0.6957 - accuracy: 0.7785 - val_loss: 0.8206 - val_accuracy: 0.7483 Epoch 84/100 71/71 [==============================] - 1s 10ms/step - loss: 0.6858 - accuracy: 0.7794 - val_loss: 0.8026 - val_accuracy: 0.7573 Epoch 85/100 71/71 [==============================] - 1s 11ms/step - loss: 0.6742 - accuracy: 0.7815 - val_loss: 0.8112 - val_accuracy: 0.7557 Epoch 86/100 71/71 [==============================] - 1s 11ms/step - loss: 0.6666 - accuracy: 0.7819 - val_loss: 0.7987 - val_accuracy: 0.7613 Epoch 87/100 71/71 [==============================] - 1s 11ms/step - loss: 0.6448 - accuracy: 0.7945 - val_loss: 0.7962 - val_accuracy: 0.7583 Epoch 88/100 71/71 [==============================] - 1s 11ms/step - loss: 0.6478 - accuracy: 0.7916 - val_loss: 0.7915 - val_accuracy: 0.7633 Epoch 89/100 71/71 [==============================] - 1s 10ms/step - loss: 0.6216 - accuracy: 0.7969 - val_loss: 0.7920 - val_accuracy: 0.7587 Epoch 90/100 71/71 [==============================] - 1s 11ms/step - loss: 0.6091 - accuracy: 0.8052 - val_loss: 0.7698 - val_accuracy: 0.7723 Epoch 91/100 71/71 [==============================] - 1s 11ms/step - loss: 0.6062 - accuracy: 0.8049 - val_loss: 0.7805 - val_accuracy: 0.7703 Epoch 92/100 71/71 [==============================] - 1s 10ms/step - loss: 0.6055 - accuracy: 0.8031 - val_loss: 0.7579 - val_accuracy: 0.7720 Epoch 93/100 71/71 [==============================] - 1s 11ms/step - loss: 0.5813 - accuracy: 0.8135 - val_loss: 0.7690 - val_accuracy: 0.7693 Epoch 94/100 71/71 [==============================] - 1s 11ms/step - loss: 0.5661 - accuracy: 0.8162 - val_loss: 0.7594 - val_accuracy: 0.7733 Epoch 95/100 71/71 [==============================] - 1s 11ms/step - loss: 0.5657 - accuracy: 0.8152 - val_loss: 0.7468 - val_accuracy: 0.7853 Epoch 96/100 71/71 [==============================] - 1s 11ms/step - loss: 0.5596 - accuracy: 0.8191 - val_loss: 0.7728 - val_accuracy: 0.7763 Epoch 97/100 71/71 [==============================] - 1s 11ms/step - loss: 0.5451 - accuracy: 0.8175 - val_loss: 0.7495 - val_accuracy: 0.7757 Epoch 98/100 71/71 [==============================] - 1s 11ms/step - loss: 0.5349 - accuracy: 0.8249 - val_loss: 0.7357 - val_accuracy: 0.7803 Epoch 99/100 71/71 [==============================] - 1s 11ms/step - loss: 0.5352 - accuracy: 0.8244 - val_loss: 0.7270 - val_accuracy: 0.7860 Epoch 100/100 71/71 [==============================] - 1s 11ms/step - loss: 0.5251 - accuracy: 0.8273 - val_loss: 0.7459 - val_accuracy: 0.7777
valLost = {k:v.history['val_accuracy'] for k,v in results.items()}
valLostCurve = pd.DataFrame(valLost)
valLostCurve.plot()
plt.title('Validation Accuracy')
plt.show()
def createModel(optimizer,dropout):
model = Sequential()
model.add(Conv2D(64, (3, 3), activation='relu',input_shape=(31,31,1)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(dropout))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(dropout))
model.add(Conv2D(256, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(dropout))
model.add(Flatten())
model.add(Dense(512, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer=optimizer, metrics=['accuracy'])
return model
model = KerasClassifier(build_fn=createModel,epochs=100,batch_size=128)
paramGrid = {'optimizer':['adam','rmsprop','nadam'],'dropout':[0.2,0.3,0.4]}
randomSearch = RandomizedSearchCV(model,param_distributions = paramGrid, cv=3)
randomSearchRes = randomSearch.fit(X_train,y_train)
print(f"Best Score: {randomSearchRes.best_score_} Best Params: {randomSearchRes.best_params_}")
Epoch 1/100
C:\Users\kieny\AppData\Local\Temp\ipykernel_43868\2954678440.py:4: DeprecationWarning: KerasClassifier is deprecated, use Sci-Keras (https://github.com/adriangb/scikeras) instead. See https://www.adriangb.com/scikeras/stable/migration.html for help migrating. model = KerasClassifier(build_fn=createModel,epochs=100,batch_size=128)
48/48 [==============================] - 1s 12ms/step - loss: 2.6302 - accuracy: 0.0869
Epoch 2/100
48/48 [==============================] - 0s 9ms/step - loss: 2.5294 - accuracy: 0.1190
Epoch 3/100
48/48 [==============================] - 0s 9ms/step - loss: 2.4299 - accuracy: 0.1544
Epoch 4/100
48/48 [==============================] - 0s 9ms/step - loss: 2.3194 - accuracy: 0.2036
Epoch 5/100
48/48 [==============================] - 0s 9ms/step - loss: 2.2720 - accuracy: 0.2434
Epoch 6/100
48/48 [==============================] - 0s 9ms/step - loss: 2.0877 - accuracy: 0.3038
Epoch 7/100
48/48 [==============================] - 0s 9ms/step - loss: 1.8730 - accuracy: 0.3810
Epoch 8/100
48/48 [==============================] - 0s 9ms/step - loss: 1.9382 - accuracy: 0.3735
Epoch 9/100
48/48 [==============================] - 0s 9ms/step - loss: 1.6044 - accuracy: 0.4742
Epoch 10/100
48/48 [==============================] - 0s 9ms/step - loss: 2.1023 - accuracy: 0.3362
Epoch 11/100
48/48 [==============================] - 0s 9ms/step - loss: 1.6347 - accuracy: 0.4729
Epoch 12/100
48/48 [==============================] - 0s 9ms/step - loss: 1.4276 - accuracy: 0.5399
Epoch 13/100
48/48 [==============================] - 0s 9ms/step - loss: 1.2874 - accuracy: 0.5823
Epoch 14/100
48/48 [==============================] - 0s 9ms/step - loss: 1.4076 - accuracy: 0.5445
Epoch 15/100
48/48 [==============================] - 0s 9ms/step - loss: 1.1671 - accuracy: 0.6210
Epoch 16/100
48/48 [==============================] - 0s 9ms/step - loss: 1.0986 - accuracy: 0.6417
Epoch 17/100
48/48 [==============================] - 0s 9ms/step - loss: 1.0270 - accuracy: 0.6633
Epoch 18/100
48/48 [==============================] - 0s 9ms/step - loss: 0.9233 - accuracy: 0.6991
Epoch 19/100
48/48 [==============================] - 0s 9ms/step - loss: 0.8416 - accuracy: 0.7253
Epoch 20/100
48/48 [==============================] - 0s 9ms/step - loss: 0.8065 - accuracy: 0.7346
Epoch 21/100
48/48 [==============================] - 0s 9ms/step - loss: 0.8597 - accuracy: 0.7235
Epoch 22/100
48/48 [==============================] - 0s 9ms/step - loss: 0.8176 - accuracy: 0.7365
Epoch 23/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6708 - accuracy: 0.7815
Epoch 24/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6168 - accuracy: 0.8026
Epoch 25/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5592 - accuracy: 0.8169
Epoch 26/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6522 - accuracy: 0.7840
Epoch 27/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5585 - accuracy: 0.8166
Epoch 28/100
48/48 [==============================] - 0s 9ms/step - loss: 0.7032 - accuracy: 0.7692
Epoch 29/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4723 - accuracy: 0.8470
Epoch 30/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4687 - accuracy: 0.8493
Epoch 31/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4264 - accuracy: 0.8611
Epoch 32/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3909 - accuracy: 0.8711
Epoch 33/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3694 - accuracy: 0.8792
Epoch 34/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3922 - accuracy: 0.8797
Epoch 35/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3153 - accuracy: 0.8968
Epoch 36/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3742 - accuracy: 0.8799
Epoch 37/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3123 - accuracy: 0.9031
Epoch 38/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2737 - accuracy: 0.9144
Epoch 39/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3421 - accuracy: 0.8945
Epoch 40/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3345 - accuracy: 0.8927
Epoch 41/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2497 - accuracy: 0.9209
Epoch 42/100
48/48 [==============================] - 0s 8ms/step - loss: 0.2343 - accuracy: 0.9236
Epoch 43/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4989 - accuracy: 0.8513
Epoch 44/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2616 - accuracy: 0.9148
Epoch 45/100
48/48 [==============================] - 0s 8ms/step - loss: 0.2238 - accuracy: 0.9247
Epoch 46/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1940 - accuracy: 0.9395
Epoch 47/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2087 - accuracy: 0.9345
Epoch 48/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2056 - accuracy: 0.9340
Epoch 49/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1736 - accuracy: 0.9418
Epoch 50/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1978 - accuracy: 0.9380
Epoch 51/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5742 - accuracy: 0.8375
Epoch 52/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2109 - accuracy: 0.9324
Epoch 53/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1794 - accuracy: 0.9440
Epoch 54/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2052 - accuracy: 0.9342
Epoch 55/100
48/48 [==============================] - 0s 8ms/step - loss: 0.2371 - accuracy: 0.9252
Epoch 56/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1475 - accuracy: 0.9546
Epoch 57/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1602 - accuracy: 0.9458
Epoch 58/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1455 - accuracy: 0.9523
Epoch 59/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2171 - accuracy: 0.9335
Epoch 60/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1547 - accuracy: 0.9513
Epoch 61/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1489 - accuracy: 0.9525
Epoch 62/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1950 - accuracy: 0.9393
Epoch 63/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1193 - accuracy: 0.9605
Epoch 64/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1118 - accuracy: 0.9656
Epoch 65/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1085 - accuracy: 0.9628
Epoch 66/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1117 - accuracy: 0.9658
Epoch 67/100
48/48 [==============================] - 0s 8ms/step - loss: 0.0977 - accuracy: 0.9679
Epoch 68/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1012 - accuracy: 0.9671
Epoch 69/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1091 - accuracy: 0.9643
Epoch 70/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0869 - accuracy: 0.9726
Epoch 71/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1944 - accuracy: 0.9422
Epoch 72/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1120 - accuracy: 0.9646
Epoch 73/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1018 - accuracy: 0.9671
Epoch 74/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1121 - accuracy: 0.9638
Epoch 75/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1016 - accuracy: 0.9671
Epoch 76/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1331 - accuracy: 0.9581
Epoch 77/100
48/48 [==============================] - 0s 8ms/step - loss: 0.0958 - accuracy: 0.9686
Epoch 78/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1122 - accuracy: 0.9651
Epoch 79/100
48/48 [==============================] - 0s 8ms/step - loss: 0.0910 - accuracy: 0.9691
Epoch 80/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1206 - accuracy: 0.9643
Epoch 81/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0957 - accuracy: 0.9718
Epoch 82/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1010 - accuracy: 0.9688
Epoch 83/100
48/48 [==============================] - 0s 8ms/step - loss: 0.0934 - accuracy: 0.9704
Epoch 84/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0746 - accuracy: 0.9764
Epoch 85/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0717 - accuracy: 0.9772
Epoch 86/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0703 - accuracy: 0.9757
Epoch 87/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0803 - accuracy: 0.9729
Epoch 88/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0708 - accuracy: 0.9782
Epoch 89/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0751 - accuracy: 0.9754
Epoch 90/100
48/48 [==============================] - 0s 8ms/step - loss: 0.0688 - accuracy: 0.9784
Epoch 91/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0941 - accuracy: 0.9716
Epoch 92/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0925 - accuracy: 0.9734
Epoch 93/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0786 - accuracy: 0.9747
Epoch 94/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0717 - accuracy: 0.9777
Epoch 95/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0905 - accuracy: 0.9736
Epoch 96/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0867 - accuracy: 0.9721
Epoch 97/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0870 - accuracy: 0.9704
Epoch 98/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0719 - accuracy: 0.9774
Epoch 99/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0626 - accuracy: 0.9799
Epoch 100/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0702 - accuracy: 0.9791
24/24 [==============================] - 0s 7ms/step - loss: 0.3984 - accuracy: 0.9017
Epoch 1/100
48/48 [==============================] - 1s 11ms/step - loss: 2.6354 - accuracy: 0.0892
Epoch 2/100
48/48 [==============================] - 0s 10ms/step - loss: 2.5399 - accuracy: 0.1141
Epoch 3/100
48/48 [==============================] - 0s 9ms/step - loss: 2.4368 - accuracy: 0.1630
Epoch 4/100
48/48 [==============================] - 0s 9ms/step - loss: 2.3471 - accuracy: 0.1987
Epoch 5/100
48/48 [==============================] - 0s 9ms/step - loss: 2.1824 - accuracy: 0.2622
Epoch 6/100
48/48 [==============================] - 0s 9ms/step - loss: 2.0372 - accuracy: 0.3361
Epoch 7/100
48/48 [==============================] - 0s 9ms/step - loss: 1.8214 - accuracy: 0.3989
Epoch 8/100
48/48 [==============================] - 0s 9ms/step - loss: 1.7023 - accuracy: 0.4438
Epoch 9/100
48/48 [==============================] - 0s 9ms/step - loss: 1.5362 - accuracy: 0.4923
Epoch 10/100
48/48 [==============================] - 0s 9ms/step - loss: 1.5675 - accuracy: 0.4891
Epoch 11/100
48/48 [==============================] - 0s 9ms/step - loss: 1.3403 - accuracy: 0.5627
Epoch 12/100
48/48 [==============================] - 0s 9ms/step - loss: 1.2781 - accuracy: 0.5825
Epoch 13/100
48/48 [==============================] - 0s 9ms/step - loss: 1.1889 - accuracy: 0.6112
Epoch 14/100
48/48 [==============================] - 0s 9ms/step - loss: 1.1424 - accuracy: 0.6263
Epoch 15/100
48/48 [==============================] - 0s 9ms/step - loss: 1.1103 - accuracy: 0.6416
Epoch 16/100
48/48 [==============================] - 0s 9ms/step - loss: 1.0113 - accuracy: 0.6760
Epoch 17/100
48/48 [==============================] - 0s 10ms/step - loss: 0.9444 - accuracy: 0.6882
Epoch 18/100
48/48 [==============================] - 0s 9ms/step - loss: 0.8408 - accuracy: 0.7289
Epoch 19/100
48/48 [==============================] - 0s 9ms/step - loss: 0.8407 - accuracy: 0.7317
Epoch 20/100
48/48 [==============================] - 0s 9ms/step - loss: 0.7778 - accuracy: 0.7476
Epoch 21/100
48/48 [==============================] - 0s 9ms/step - loss: 0.7297 - accuracy: 0.7598
Epoch 22/100
48/48 [==============================] - 0s 9ms/step - loss: 0.7589 - accuracy: 0.7561
Epoch 23/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6285 - accuracy: 0.7947
Epoch 24/100
48/48 [==============================] - 0s 8ms/step - loss: 0.7317 - accuracy: 0.7711
Epoch 25/100
48/48 [==============================] - 0s 9ms/step - loss: 0.7607 - accuracy: 0.7579
Epoch 26/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6617 - accuracy: 0.7885
Epoch 27/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5162 - accuracy: 0.8345
Epoch 28/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5300 - accuracy: 0.8299
Epoch 29/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6348 - accuracy: 0.7998
Epoch 30/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4659 - accuracy: 0.8495
Epoch 31/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4264 - accuracy: 0.8614
Epoch 32/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4112 - accuracy: 0.8644
Epoch 33/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4717 - accuracy: 0.8443
Epoch 34/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3785 - accuracy: 0.8789
Epoch 35/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4521 - accuracy: 0.8576
Epoch 36/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3547 - accuracy: 0.8884
Epoch 37/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3529 - accuracy: 0.8859
Epoch 38/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4000 - accuracy: 0.8681
Epoch 39/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3311 - accuracy: 0.8927
Epoch 40/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2971 - accuracy: 0.8987
Epoch 41/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2848 - accuracy: 0.9083
Epoch 42/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2639 - accuracy: 0.9148
Epoch 43/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2618 - accuracy: 0.9196
Epoch 44/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2786 - accuracy: 0.9123
Epoch 45/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3137 - accuracy: 0.8947
Epoch 46/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2380 - accuracy: 0.9244
Epoch 47/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3976 - accuracy: 0.8724
Epoch 48/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2814 - accuracy: 0.9075
Epoch 49/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2190 - accuracy: 0.9319
Epoch 50/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2119 - accuracy: 0.9327
Epoch 51/100
48/48 [==============================] - 0s 8ms/step - loss: 0.2364 - accuracy: 0.9231
Epoch 52/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2132 - accuracy: 0.9322
Epoch 53/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1805 - accuracy: 0.9410
Epoch 54/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1843 - accuracy: 0.9389
Epoch 55/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1687 - accuracy: 0.9467
Epoch 56/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1643 - accuracy: 0.9473
Epoch 57/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2056 - accuracy: 0.9309
Epoch 58/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1664 - accuracy: 0.9468
Epoch 59/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1543 - accuracy: 0.9517
Epoch 60/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1700 - accuracy: 0.9433
Epoch 61/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1517 - accuracy: 0.9525
Epoch 62/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1663 - accuracy: 0.9472
Epoch 63/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1685 - accuracy: 0.9472
Epoch 64/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1470 - accuracy: 0.9518
Epoch 65/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1337 - accuracy: 0.9551
Epoch 66/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1243 - accuracy: 0.9593
Epoch 67/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1287 - accuracy: 0.9593
Epoch 68/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1613 - accuracy: 0.9472
Epoch 69/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1347 - accuracy: 0.9561
Epoch 70/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1162 - accuracy: 0.9644
Epoch 71/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1163 - accuracy: 0.9658
Epoch 72/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1178 - accuracy: 0.9600
Epoch 73/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1162 - accuracy: 0.9633
Epoch 74/100
48/48 [==============================] - 0s 8ms/step - loss: 0.2298 - accuracy: 0.9282
Epoch 75/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2418 - accuracy: 0.9244
Epoch 76/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1257 - accuracy: 0.9615
Epoch 77/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1379 - accuracy: 0.9596
Epoch 78/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1171 - accuracy: 0.9638
Epoch 79/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1166 - accuracy: 0.9628
Epoch 80/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1227 - accuracy: 0.9608
Epoch 81/100
48/48 [==============================] - 0s 8ms/step - loss: 0.0982 - accuracy: 0.9659
Epoch 82/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0999 - accuracy: 0.9649
Epoch 83/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1453 - accuracy: 0.9548
Epoch 84/100
48/48 [==============================] - 0s 8ms/step - loss: 0.3061 - accuracy: 0.9088
Epoch 85/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1412 - accuracy: 0.9540
Epoch 86/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1210 - accuracy: 0.9616
Epoch 87/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1256 - accuracy: 0.9618
Epoch 88/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0830 - accuracy: 0.9744
Epoch 89/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0929 - accuracy: 0.9693
Epoch 90/100
48/48 [==============================] - 0s 8ms/step - loss: 0.0895 - accuracy: 0.9698
Epoch 91/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0844 - accuracy: 0.9737
Epoch 92/100
48/48 [==============================] - 0s 8ms/step - loss: 0.0964 - accuracy: 0.9691
Epoch 93/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0838 - accuracy: 0.9746
Epoch 94/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0905 - accuracy: 0.9708
Epoch 95/100
48/48 [==============================] - 0s 8ms/step - loss: 0.0881 - accuracy: 0.9704
Epoch 96/100
48/48 [==============================] - 0s 8ms/step - loss: 0.0777 - accuracy: 0.9746
Epoch 97/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0988 - accuracy: 0.9679
Epoch 98/100
48/48 [==============================] - 0s 8ms/step - loss: 0.0876 - accuracy: 0.9711
Epoch 99/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0747 - accuracy: 0.9761
Epoch 100/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1298 - accuracy: 0.9606
24/24 [==============================] - 0s 7ms/step - loss: 0.3996 - accuracy: 0.9003
Epoch 1/100
48/48 [==============================] - 1s 8ms/step - loss: 2.6317 - accuracy: 0.0922
Epoch 2/100
48/48 [==============================] - 0s 9ms/step - loss: 2.5266 - accuracy: 0.1102
Epoch 3/100
48/48 [==============================] - 0s 9ms/step - loss: 2.4492 - accuracy: 0.1411
Epoch 4/100
48/48 [==============================] - 0s 8ms/step - loss: 2.3737 - accuracy: 0.1671
Epoch 5/100
48/48 [==============================] - 0s 9ms/step - loss: 2.2784 - accuracy: 0.2273
Epoch 6/100
48/48 [==============================] - 0s 9ms/step - loss: 2.0472 - accuracy: 0.3173
Epoch 7/100
48/48 [==============================] - 0s 8ms/step - loss: 1.9277 - accuracy: 0.3544
Epoch 8/100
48/48 [==============================] - 0s 9ms/step - loss: 1.7787 - accuracy: 0.4124
Epoch 9/100
48/48 [==============================] - 0s 9ms/step - loss: 1.6109 - accuracy: 0.4702
Epoch 10/100
48/48 [==============================] - 0s 8ms/step - loss: 1.5169 - accuracy: 0.4973
Epoch 11/100
48/48 [==============================] - 0s 8ms/step - loss: 1.3918 - accuracy: 0.5411
Epoch 12/100
48/48 [==============================] - 0s 9ms/step - loss: 1.2903 - accuracy: 0.5742
Epoch 13/100
48/48 [==============================] - 0s 9ms/step - loss: 1.3405 - accuracy: 0.5597
Epoch 14/100
48/48 [==============================] - 0s 9ms/step - loss: 1.1130 - accuracy: 0.6312
Epoch 15/100
48/48 [==============================] - 0s 9ms/step - loss: 1.0851 - accuracy: 0.6544
Epoch 16/100
48/48 [==============================] - 0s 9ms/step - loss: 1.0564 - accuracy: 0.6602
Epoch 17/100
48/48 [==============================] - 0s 8ms/step - loss: 1.0000 - accuracy: 0.6749
Epoch 18/100
48/48 [==============================] - 0s 9ms/step - loss: 0.8751 - accuracy: 0.7132
Epoch 19/100
48/48 [==============================] - 0s 9ms/step - loss: 0.9246 - accuracy: 0.7041
Epoch 20/100
48/48 [==============================] - 0s 9ms/step - loss: 0.8207 - accuracy: 0.7335
Epoch 21/100
48/48 [==============================] - 0s 9ms/step - loss: 0.7282 - accuracy: 0.7637
Epoch 22/100
48/48 [==============================] - 0s 8ms/step - loss: 0.7410 - accuracy: 0.7599
Epoch 23/100
48/48 [==============================] - 0s 8ms/step - loss: 0.7421 - accuracy: 0.7568
Epoch 24/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6084 - accuracy: 0.8000
Epoch 25/100
48/48 [==============================] - 0s 8ms/step - loss: 0.6253 - accuracy: 0.7955
Epoch 26/100
48/48 [==============================] - 0s 8ms/step - loss: 0.6060 - accuracy: 0.8006
Epoch 27/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6103 - accuracy: 0.8066
Epoch 28/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5321 - accuracy: 0.8249
Epoch 29/100
48/48 [==============================] - 0s 8ms/step - loss: 0.4967 - accuracy: 0.8390
Epoch 30/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5354 - accuracy: 0.8264
Epoch 31/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5344 - accuracy: 0.8267
Epoch 32/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4120 - accuracy: 0.8714
Epoch 33/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4001 - accuracy: 0.8659
Epoch 34/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3797 - accuracy: 0.8761
Epoch 35/100
48/48 [==============================] - 0s 8ms/step - loss: 0.3869 - accuracy: 0.8777
Epoch 36/100
48/48 [==============================] - 0s 8ms/step - loss: 0.3331 - accuracy: 0.8922
Epoch 37/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3204 - accuracy: 0.8947
Epoch 38/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3252 - accuracy: 0.8940
Epoch 39/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3145 - accuracy: 0.8980
Epoch 40/100
48/48 [==============================] - 0s 8ms/step - loss: 0.3979 - accuracy: 0.8749
Epoch 41/100
48/48 [==============================] - 0s 8ms/step - loss: 0.2675 - accuracy: 0.9114
Epoch 42/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2730 - accuracy: 0.9118
Epoch 43/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2684 - accuracy: 0.9124
Epoch 44/100
48/48 [==============================] - 0s 8ms/step - loss: 0.2610 - accuracy: 0.9178
Epoch 45/100
48/48 [==============================] - 0s 8ms/step - loss: 0.2630 - accuracy: 0.9156
Epoch 46/100
48/48 [==============================] - 0s 8ms/step - loss: 0.3624 - accuracy: 0.8822
Epoch 47/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2255 - accuracy: 0.9286
Epoch 48/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2410 - accuracy: 0.9231
Epoch 49/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2008 - accuracy: 0.9335
Epoch 50/100
48/48 [==============================] - 0s 8ms/step - loss: 0.2418 - accuracy: 0.9236
Epoch 51/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1955 - accuracy: 0.9382
Epoch 52/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1688 - accuracy: 0.9443
Epoch 53/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1747 - accuracy: 0.9414
Epoch 54/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2202 - accuracy: 0.9286
Epoch 55/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1855 - accuracy: 0.9414
Epoch 56/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1706 - accuracy: 0.9448
Epoch 57/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1682 - accuracy: 0.9458
Epoch 58/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1447 - accuracy: 0.9548
Epoch 59/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1757 - accuracy: 0.9428
Epoch 60/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1787 - accuracy: 0.9414
Epoch 61/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1411 - accuracy: 0.9551
Epoch 62/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1456 - accuracy: 0.9535
Epoch 63/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1847 - accuracy: 0.9445
Epoch 64/100
48/48 [==============================] - 0s 8ms/step - loss: 0.4662 - accuracy: 0.8633
Epoch 65/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1631 - accuracy: 0.9497
Epoch 66/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1391 - accuracy: 0.9551
Epoch 67/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1646 - accuracy: 0.9505
Epoch 68/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1196 - accuracy: 0.9633
Epoch 69/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1205 - accuracy: 0.9595
Epoch 70/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1240 - accuracy: 0.9636
Epoch 71/100
48/48 [==============================] - 0s 8ms/step - loss: 0.0928 - accuracy: 0.9706
Epoch 72/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1140 - accuracy: 0.9636
Epoch 73/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1565 - accuracy: 0.9540
Epoch 74/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1706 - accuracy: 0.9495
Epoch 75/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1246 - accuracy: 0.9623
Epoch 76/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0923 - accuracy: 0.9704
Epoch 77/100
48/48 [==============================] - 0s 8ms/step - loss: 0.0981 - accuracy: 0.9673
Epoch 78/100
48/48 [==============================] - 0s 8ms/step - loss: 0.0952 - accuracy: 0.9704
Epoch 79/100
48/48 [==============================] - 0s 8ms/step - loss: 0.0966 - accuracy: 0.9694
Epoch 80/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0943 - accuracy: 0.9706
Epoch 81/100
48/48 [==============================] - 0s 8ms/step - loss: 0.0845 - accuracy: 0.9723
Epoch 82/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0860 - accuracy: 0.9729
Epoch 83/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0981 - accuracy: 0.9671
Epoch 84/100
48/48 [==============================] - 0s 8ms/step - loss: 0.0893 - accuracy: 0.9718
Epoch 85/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2802 - accuracy: 0.9184
Epoch 86/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1125 - accuracy: 0.9654
Epoch 87/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0892 - accuracy: 0.9711
Epoch 88/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0985 - accuracy: 0.9678
Epoch 89/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0815 - accuracy: 0.9754
Epoch 90/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0768 - accuracy: 0.9751
Epoch 91/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1044 - accuracy: 0.9686
Epoch 92/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0874 - accuracy: 0.9734
Epoch 93/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0769 - accuracy: 0.9752
Epoch 94/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1115 - accuracy: 0.9656
Epoch 95/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1451 - accuracy: 0.9568
Epoch 96/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0722 - accuracy: 0.9784
Epoch 97/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0766 - accuracy: 0.9749
Epoch 98/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0876 - accuracy: 0.9736
Epoch 99/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0739 - accuracy: 0.9754
Epoch 100/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0722 - accuracy: 0.9769
24/24 [==============================] - 0s 4ms/step - loss: 0.4191 - accuracy: 0.9033
Epoch 1/100
48/48 [==============================] - 1s 11ms/step - loss: 2.6316 - accuracy: 0.1052
Epoch 2/100
48/48 [==============================] - 0s 10ms/step - loss: 2.5319 - accuracy: 0.1368
Epoch 3/100
48/48 [==============================] - 0s 10ms/step - loss: 2.4577 - accuracy: 0.1647
Epoch 4/100
48/48 [==============================] - 1s 11ms/step - loss: 2.3308 - accuracy: 0.2233
Epoch 5/100
48/48 [==============================] - 0s 10ms/step - loss: 2.1630 - accuracy: 0.2910
Epoch 6/100
48/48 [==============================] - 1s 10ms/step - loss: 2.0432 - accuracy: 0.3383
Epoch 7/100
48/48 [==============================] - 0s 10ms/step - loss: 1.9172 - accuracy: 0.3807
Epoch 8/100
48/48 [==============================] - 0s 9ms/step - loss: 1.8129 - accuracy: 0.4101
Epoch 9/100
48/48 [==============================] - 0s 10ms/step - loss: 1.6759 - accuracy: 0.4649
Epoch 10/100
48/48 [==============================] - 0s 10ms/step - loss: 1.5743 - accuracy: 0.4920
Epoch 11/100
48/48 [==============================] - 0s 10ms/step - loss: 1.5045 - accuracy: 0.5268
Epoch 12/100
48/48 [==============================] - 0s 10ms/step - loss: 1.3519 - accuracy: 0.5598
Epoch 13/100
48/48 [==============================] - 0s 10ms/step - loss: 1.3485 - accuracy: 0.5833
Epoch 14/100
48/48 [==============================] - 0s 10ms/step - loss: 1.1963 - accuracy: 0.6188
Epoch 15/100
48/48 [==============================] - 0s 10ms/step - loss: 1.1209 - accuracy: 0.6427
Epoch 16/100
48/48 [==============================] - 0s 10ms/step - loss: 1.0761 - accuracy: 0.6589
Epoch 17/100
48/48 [==============================] - 1s 11ms/step - loss: 0.9922 - accuracy: 0.6849
Epoch 18/100
48/48 [==============================] - 0s 10ms/step - loss: 0.9199 - accuracy: 0.7046
Epoch 19/100
48/48 [==============================] - 0s 10ms/step - loss: 0.8505 - accuracy: 0.7280
Epoch 20/100
48/48 [==============================] - 0s 9ms/step - loss: 0.8000 - accuracy: 0.7403
Epoch 21/100
48/48 [==============================] - 0s 10ms/step - loss: 0.7482 - accuracy: 0.7629
Epoch 22/100
48/48 [==============================] - 0s 10ms/step - loss: 0.6741 - accuracy: 0.7851
Epoch 23/100
48/48 [==============================] - 0s 10ms/step - loss: 0.6266 - accuracy: 0.8033
Epoch 24/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5942 - accuracy: 0.8127
Epoch 25/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5531 - accuracy: 0.8225
Epoch 26/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5247 - accuracy: 0.8385
Epoch 27/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5301 - accuracy: 0.8416
Epoch 28/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4664 - accuracy: 0.8534
Epoch 29/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4698 - accuracy: 0.8594
Epoch 30/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4031 - accuracy: 0.8725
Epoch 31/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3722 - accuracy: 0.8809
Epoch 32/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3774 - accuracy: 0.8829
Epoch 33/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3342 - accuracy: 0.9000
Epoch 34/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3325 - accuracy: 0.9021
Epoch 35/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2963 - accuracy: 0.9078
Epoch 36/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2541 - accuracy: 0.9196
Epoch 37/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2722 - accuracy: 0.9154
Epoch 38/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2344 - accuracy: 0.9280
Epoch 39/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2194 - accuracy: 0.9307
Epoch 40/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2446 - accuracy: 0.9247
Epoch 41/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1993 - accuracy: 0.9327
Epoch 42/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2043 - accuracy: 0.9379
Epoch 43/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1966 - accuracy: 0.9389
Epoch 44/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2055 - accuracy: 0.9377
Epoch 45/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1913 - accuracy: 0.9425
Epoch 46/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1511 - accuracy: 0.9523
Epoch 47/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1741 - accuracy: 0.9485
Epoch 48/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1621 - accuracy: 0.9511
Epoch 49/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1480 - accuracy: 0.9548
Epoch 50/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1380 - accuracy: 0.9563
Epoch 51/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1390 - accuracy: 0.9563
Epoch 52/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1389 - accuracy: 0.9590
Epoch 53/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1304 - accuracy: 0.9629
Epoch 54/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1484 - accuracy: 0.9596
Epoch 55/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1183 - accuracy: 0.9603
Epoch 56/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1295 - accuracy: 0.9631
Epoch 57/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1109 - accuracy: 0.9661
Epoch 58/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1181 - accuracy: 0.9634
Epoch 59/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1016 - accuracy: 0.9689
Epoch 60/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1048 - accuracy: 0.9671
Epoch 61/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0983 - accuracy: 0.9706
Epoch 62/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1065 - accuracy: 0.9696
Epoch 63/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1171 - accuracy: 0.9634
Epoch 64/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0912 - accuracy: 0.9727
Epoch 65/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0888 - accuracy: 0.9724
Epoch 66/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0866 - accuracy: 0.9729
Epoch 67/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0981 - accuracy: 0.9701
Epoch 68/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0978 - accuracy: 0.9706
Epoch 69/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1059 - accuracy: 0.9698
Epoch 70/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0771 - accuracy: 0.9767
Epoch 71/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1155 - accuracy: 0.9676
Epoch 72/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0896 - accuracy: 0.9722
Epoch 73/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0846 - accuracy: 0.9751
Epoch 74/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0798 - accuracy: 0.9752
Epoch 75/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0857 - accuracy: 0.9757
Epoch 76/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0859 - accuracy: 0.9761
Epoch 77/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0914 - accuracy: 0.9741
Epoch 78/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0836 - accuracy: 0.9757
Epoch 79/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0626 - accuracy: 0.9807
Epoch 80/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0985 - accuracy: 0.9739
Epoch 81/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0921 - accuracy: 0.9757
Epoch 82/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0616 - accuracy: 0.9799
Epoch 83/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0695 - accuracy: 0.9797
Epoch 84/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0838 - accuracy: 0.9747
Epoch 85/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0831 - accuracy: 0.9761
Epoch 86/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0797 - accuracy: 0.9784
Epoch 87/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0720 - accuracy: 0.9801
Epoch 88/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0634 - accuracy: 0.9807
Epoch 89/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1030 - accuracy: 0.9754
Epoch 90/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0617 - accuracy: 0.9834
Epoch 91/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0889 - accuracy: 0.9744
Epoch 92/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0757 - accuracy: 0.9784
Epoch 93/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0680 - accuracy: 0.9807
Epoch 94/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0825 - accuracy: 0.9782
Epoch 95/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0755 - accuracy: 0.9786
Epoch 96/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0831 - accuracy: 0.9817
Epoch 97/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0615 - accuracy: 0.9816
Epoch 98/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0636 - accuracy: 0.9799
Epoch 99/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0624 - accuracy: 0.9837
Epoch 100/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0604 - accuracy: 0.9835
24/24 [==============================] - 0s 4ms/step - loss: 0.5894 - accuracy: 0.9013
Epoch 1/100
48/48 [==============================] - 1s 10ms/step - loss: 2.6373 - accuracy: 0.0982
Epoch 2/100
48/48 [==============================] - 0s 9ms/step - loss: 2.5803 - accuracy: 0.1266
Epoch 3/100
48/48 [==============================] - 0s 10ms/step - loss: 2.4673 - accuracy: 0.1708
Epoch 4/100
48/48 [==============================] - 0s 9ms/step - loss: 2.2909 - accuracy: 0.2466
Epoch 5/100
48/48 [==============================] - 0s 10ms/step - loss: 2.1737 - accuracy: 0.2941
Epoch 6/100
48/48 [==============================] - 0s 10ms/step - loss: 2.0523 - accuracy: 0.3339
Epoch 7/100
48/48 [==============================] - 0s 9ms/step - loss: 1.9458 - accuracy: 0.3720
Epoch 8/100
48/48 [==============================] - 0s 10ms/step - loss: 1.8069 - accuracy: 0.4144
Epoch 9/100
48/48 [==============================] - 0s 10ms/step - loss: 1.6873 - accuracy: 0.4652
Epoch 10/100
48/48 [==============================] - 0s 9ms/step - loss: 1.5893 - accuracy: 0.5041
Epoch 11/100
48/48 [==============================] - 0s 10ms/step - loss: 1.4913 - accuracy: 0.5233
Epoch 12/100
48/48 [==============================] - 0s 9ms/step - loss: 1.3599 - accuracy: 0.5699
Epoch 13/100
48/48 [==============================] - 0s 9ms/step - loss: 1.2628 - accuracy: 0.6034
Epoch 14/100
48/48 [==============================] - 0s 10ms/step - loss: 1.1882 - accuracy: 0.6265
Epoch 15/100
48/48 [==============================] - 0s 10ms/step - loss: 1.1230 - accuracy: 0.6493
Epoch 16/100
48/48 [==============================] - 0s 10ms/step - loss: 1.0417 - accuracy: 0.6767
Epoch 17/100
48/48 [==============================] - 0s 10ms/step - loss: 0.9269 - accuracy: 0.7124
Epoch 18/100
48/48 [==============================] - 0s 10ms/step - loss: 0.8420 - accuracy: 0.7318
Epoch 19/100
48/48 [==============================] - 0s 10ms/step - loss: 0.7890 - accuracy: 0.7521
Epoch 20/100
48/48 [==============================] - 0s 10ms/step - loss: 0.7569 - accuracy: 0.7699
Epoch 21/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6896 - accuracy: 0.7900
Epoch 22/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6475 - accuracy: 0.7985
Epoch 23/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5800 - accuracy: 0.8164
Epoch 24/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5829 - accuracy: 0.8214
Epoch 25/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5132 - accuracy: 0.8377
Epoch 26/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4601 - accuracy: 0.8594
Epoch 27/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4314 - accuracy: 0.8661
Epoch 28/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3961 - accuracy: 0.8762
Epoch 29/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3832 - accuracy: 0.8822
Epoch 30/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3379 - accuracy: 0.8908
Epoch 31/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3344 - accuracy: 0.8960
Epoch 32/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3336 - accuracy: 0.8952
Epoch 33/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2662 - accuracy: 0.9178
Epoch 34/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2665 - accuracy: 0.9134
Epoch 35/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2466 - accuracy: 0.9196
Epoch 36/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2583 - accuracy: 0.9211
Epoch 37/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2562 - accuracy: 0.9264
Epoch 38/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2297 - accuracy: 0.9314
Epoch 39/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1925 - accuracy: 0.9385
Epoch 40/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2233 - accuracy: 0.9340
Epoch 41/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1871 - accuracy: 0.9405
Epoch 42/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1898 - accuracy: 0.9482
Epoch 43/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1556 - accuracy: 0.9518
Epoch 44/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1695 - accuracy: 0.9493
Epoch 45/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1460 - accuracy: 0.9563
Epoch 46/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1634 - accuracy: 0.9493
Epoch 47/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1371 - accuracy: 0.9611
Epoch 48/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1381 - accuracy: 0.9585
Epoch 49/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1276 - accuracy: 0.9610
Epoch 50/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1380 - accuracy: 0.9573
Epoch 51/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1150 - accuracy: 0.9659
Epoch 52/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1371 - accuracy: 0.9600
Epoch 53/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1324 - accuracy: 0.9633
Epoch 54/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1429 - accuracy: 0.9620
Epoch 55/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1075 - accuracy: 0.9661
Epoch 56/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0986 - accuracy: 0.9694
Epoch 57/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1103 - accuracy: 0.9704
Epoch 58/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0919 - accuracy: 0.9724
Epoch 59/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0961 - accuracy: 0.9696
Epoch 60/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0884 - accuracy: 0.9737
Epoch 61/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1250 - accuracy: 0.9664
Epoch 62/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0988 - accuracy: 0.9704
Epoch 63/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0966 - accuracy: 0.9728
Epoch 64/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0728 - accuracy: 0.9761
Epoch 65/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1125 - accuracy: 0.9686
Epoch 66/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0856 - accuracy: 0.9723
Epoch 67/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0758 - accuracy: 0.9792
Epoch 68/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0897 - accuracy: 0.9747
Epoch 69/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0746 - accuracy: 0.9751
Epoch 70/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0935 - accuracy: 0.9713
Epoch 71/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0899 - accuracy: 0.9757
Epoch 72/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0855 - accuracy: 0.9741
Epoch 73/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0784 - accuracy: 0.9776
Epoch 74/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0907 - accuracy: 0.9752
Epoch 75/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0719 - accuracy: 0.9787
Epoch 76/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0784 - accuracy: 0.9759
Epoch 77/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0641 - accuracy: 0.9814
Epoch 78/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0803 - accuracy: 0.9771
Epoch 79/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0755 - accuracy: 0.9769
Epoch 80/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0650 - accuracy: 0.9804
Epoch 81/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0797 - accuracy: 0.9776
Epoch 82/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0862 - accuracy: 0.9789
Epoch 83/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0585 - accuracy: 0.9836
Epoch 84/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0752 - accuracy: 0.9797
Epoch 85/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0607 - accuracy: 0.9817
Epoch 86/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0940 - accuracy: 0.9809
Epoch 87/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0722 - accuracy: 0.9794
Epoch 88/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0822 - accuracy: 0.9777
Epoch 89/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0878 - accuracy: 0.9787
Epoch 90/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0680 - accuracy: 0.9794
Epoch 91/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0644 - accuracy: 0.9794
Epoch 92/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0813 - accuracy: 0.9797
Epoch 93/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0703 - accuracy: 0.9791
Epoch 94/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0718 - accuracy: 0.9804
Epoch 95/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0701 - accuracy: 0.9807
Epoch 96/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0717 - accuracy: 0.9801
Epoch 97/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0739 - accuracy: 0.9804
Epoch 98/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0783 - accuracy: 0.9809
Epoch 99/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0835 - accuracy: 0.9804
Epoch 100/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0668 - accuracy: 0.9809
24/24 [==============================] - 0s 4ms/step - loss: 0.9046 - accuracy: 0.8388
Epoch 1/100
48/48 [==============================] - 1s 10ms/step - loss: 2.6388 - accuracy: 0.0975
Epoch 2/100
48/48 [==============================] - 0s 9ms/step - loss: 2.6257 - accuracy: 0.1100
Epoch 3/100
48/48 [==============================] - 0s 9ms/step - loss: 2.5393 - accuracy: 0.1470
Epoch 4/100
48/48 [==============================] - 0s 10ms/step - loss: 2.4069 - accuracy: 0.2068
Epoch 5/100
48/48 [==============================] - 0s 9ms/step - loss: 2.2389 - accuracy: 0.2580
Epoch 6/100
48/48 [==============================] - 0s 9ms/step - loss: 2.1224 - accuracy: 0.3074
Epoch 7/100
48/48 [==============================] - 0s 10ms/step - loss: 2.0136 - accuracy: 0.3444
Epoch 8/100
48/48 [==============================] - 0s 9ms/step - loss: 1.9177 - accuracy: 0.3738
Epoch 9/100
48/48 [==============================] - 0s 10ms/step - loss: 1.8199 - accuracy: 0.4120
Epoch 10/100
48/48 [==============================] - 0s 10ms/step - loss: 1.7269 - accuracy: 0.4438
Epoch 11/100
48/48 [==============================] - 0s 10ms/step - loss: 1.5998 - accuracy: 0.4899
Epoch 12/100
48/48 [==============================] - 0s 10ms/step - loss: 1.5142 - accuracy: 0.5110
Epoch 13/100
48/48 [==============================] - 0s 10ms/step - loss: 1.3977 - accuracy: 0.5532
Epoch 14/100
48/48 [==============================] - 0s 9ms/step - loss: 1.3352 - accuracy: 0.5891
Epoch 15/100
48/48 [==============================] - 0s 10ms/step - loss: 1.2566 - accuracy: 0.5943
Epoch 16/100
48/48 [==============================] - 0s 9ms/step - loss: 1.1582 - accuracy: 0.6290
Epoch 17/100
48/48 [==============================] - 0s 9ms/step - loss: 1.1120 - accuracy: 0.6539
Epoch 18/100
48/48 [==============================] - 0s 10ms/step - loss: 1.0315 - accuracy: 0.6780
Epoch 19/100
48/48 [==============================] - 0s 10ms/step - loss: 0.9417 - accuracy: 0.7074
Epoch 20/100
48/48 [==============================] - 0s 9ms/step - loss: 0.9121 - accuracy: 0.7219
Epoch 21/100
48/48 [==============================] - 0s 9ms/step - loss: 0.7920 - accuracy: 0.7490
Epoch 22/100
48/48 [==============================] - 0s 10ms/step - loss: 0.7582 - accuracy: 0.7599
Epoch 23/100
48/48 [==============================] - 0s 10ms/step - loss: 0.7220 - accuracy: 0.7745
Epoch 24/100
48/48 [==============================] - 0s 10ms/step - loss: 0.6754 - accuracy: 0.7829
Epoch 25/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6445 - accuracy: 0.7986
Epoch 26/100
48/48 [==============================] - 0s 10ms/step - loss: 0.6005 - accuracy: 0.8153
Epoch 27/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5307 - accuracy: 0.8314
Epoch 28/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5121 - accuracy: 0.8355
Epoch 29/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4766 - accuracy: 0.8518
Epoch 30/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4758 - accuracy: 0.8481
Epoch 31/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4193 - accuracy: 0.8681
Epoch 32/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3841 - accuracy: 0.8794
Epoch 33/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3644 - accuracy: 0.8882
Epoch 34/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3364 - accuracy: 0.8917
Epoch 35/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3374 - accuracy: 0.8975
Epoch 36/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3346 - accuracy: 0.8968
Epoch 37/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2879 - accuracy: 0.9075
Epoch 38/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2821 - accuracy: 0.9121
Epoch 39/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2539 - accuracy: 0.9231
Epoch 40/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2341 - accuracy: 0.9256
Epoch 41/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2252 - accuracy: 0.9286
Epoch 42/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2583 - accuracy: 0.9217
Epoch 43/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2128 - accuracy: 0.9287
Epoch 44/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2066 - accuracy: 0.9369
Epoch 45/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1732 - accuracy: 0.9450
Epoch 46/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1878 - accuracy: 0.9445
Epoch 47/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1930 - accuracy: 0.9440
Epoch 48/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1807 - accuracy: 0.9399
Epoch 49/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1527 - accuracy: 0.9563
Epoch 50/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1656 - accuracy: 0.9472
Epoch 51/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1629 - accuracy: 0.9485
Epoch 52/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1284 - accuracy: 0.9586
Epoch 53/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1679 - accuracy: 0.9546
Epoch 54/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1554 - accuracy: 0.9497
Epoch 55/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1178 - accuracy: 0.9646
Epoch 56/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1197 - accuracy: 0.9603
Epoch 57/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1474 - accuracy: 0.9540
Epoch 58/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1142 - accuracy: 0.9626
Epoch 59/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1267 - accuracy: 0.9623
Epoch 60/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1134 - accuracy: 0.9653
Epoch 61/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1438 - accuracy: 0.9566
Epoch 62/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1087 - accuracy: 0.9686
Epoch 63/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0993 - accuracy: 0.9691
Epoch 64/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1253 - accuracy: 0.9639
Epoch 65/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0896 - accuracy: 0.9731
Epoch 66/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1157 - accuracy: 0.9674
Epoch 67/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0979 - accuracy: 0.9701
Epoch 68/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0919 - accuracy: 0.9731
Epoch 69/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1277 - accuracy: 0.9634
Epoch 70/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0950 - accuracy: 0.9703
Epoch 71/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0847 - accuracy: 0.9742
Epoch 72/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1072 - accuracy: 0.9698
Epoch 73/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0793 - accuracy: 0.9787
Epoch 74/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1011 - accuracy: 0.9678
Epoch 75/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1032 - accuracy: 0.9694
Epoch 76/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0773 - accuracy: 0.9772
Epoch 77/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0893 - accuracy: 0.9749
Epoch 78/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1153 - accuracy: 0.9704
Epoch 79/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0954 - accuracy: 0.9734
Epoch 80/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0917 - accuracy: 0.9757
Epoch 81/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0799 - accuracy: 0.9784
Epoch 82/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1025 - accuracy: 0.9729
Epoch 83/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0778 - accuracy: 0.9761
Epoch 84/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0871 - accuracy: 0.9751
Epoch 85/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0861 - accuracy: 0.9767
Epoch 86/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0904 - accuracy: 0.9754
Epoch 87/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0828 - accuracy: 0.9746
Epoch 88/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1007 - accuracy: 0.9742
Epoch 89/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0598 - accuracy: 0.9831
Epoch 90/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0874 - accuracy: 0.9769
Epoch 91/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1065 - accuracy: 0.9719
Epoch 92/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0823 - accuracy: 0.9761
Epoch 93/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0902 - accuracy: 0.9756
Epoch 94/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0848 - accuracy: 0.9777
Epoch 95/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0950 - accuracy: 0.9744
Epoch 96/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0771 - accuracy: 0.9806
Epoch 97/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0841 - accuracy: 0.9794
Epoch 98/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0678 - accuracy: 0.9804
Epoch 99/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0713 - accuracy: 0.9817
Epoch 100/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0642 - accuracy: 0.9811
24/24 [==============================] - 0s 4ms/step - loss: 2.1242 - accuracy: 0.6952
Epoch 1/100
48/48 [==============================] - 2s 11ms/step - loss: 2.6355 - accuracy: 0.1012
Epoch 2/100
48/48 [==============================] - 1s 11ms/step - loss: 2.6084 - accuracy: 0.1183
Epoch 3/100
48/48 [==============================] - 1s 11ms/step - loss: 2.5450 - accuracy: 0.1537
Epoch 4/100
48/48 [==============================] - 1s 12ms/step - loss: 2.4287 - accuracy: 0.2140
Epoch 5/100
48/48 [==============================] - 1s 12ms/step - loss: 2.1964 - accuracy: 0.2793
Epoch 6/100
48/48 [==============================] - 1s 11ms/step - loss: 2.1694 - accuracy: 0.2981
Epoch 7/100
48/48 [==============================] - 1s 11ms/step - loss: 2.0065 - accuracy: 0.3433
Epoch 8/100
48/48 [==============================] - 1s 11ms/step - loss: 1.8579 - accuracy: 0.4013
Epoch 9/100
48/48 [==============================] - 1s 11ms/step - loss: 1.7575 - accuracy: 0.4339
Epoch 10/100
48/48 [==============================] - 1s 11ms/step - loss: 1.7261 - accuracy: 0.4503
Epoch 11/100
48/48 [==============================] - 1s 12ms/step - loss: 1.4750 - accuracy: 0.5166
Epoch 12/100
48/48 [==============================] - 1s 11ms/step - loss: 1.7954 - accuracy: 0.4506
Epoch 13/100
48/48 [==============================] - 1s 11ms/step - loss: 1.3637 - accuracy: 0.5640
Epoch 14/100
48/48 [==============================] - 1s 11ms/step - loss: 1.1997 - accuracy: 0.6208
Epoch 15/100
48/48 [==============================] - 1s 11ms/step - loss: 1.1937 - accuracy: 0.6210
Epoch 16/100
48/48 [==============================] - 1s 11ms/step - loss: 1.0362 - accuracy: 0.6675
Epoch 17/100
48/48 [==============================] - 1s 12ms/step - loss: 0.9917 - accuracy: 0.6806
Epoch 18/100
48/48 [==============================] - 1s 12ms/step - loss: 0.9465 - accuracy: 0.6961
Epoch 19/100
48/48 [==============================] - 1s 12ms/step - loss: 0.7994 - accuracy: 0.7469
Epoch 20/100
48/48 [==============================] - 1s 11ms/step - loss: 0.7446 - accuracy: 0.7627
Epoch 21/100
48/48 [==============================] - 1s 12ms/step - loss: 0.8512 - accuracy: 0.7366
Epoch 22/100
48/48 [==============================] - 1s 11ms/step - loss: 0.6798 - accuracy: 0.7855
Epoch 23/100
48/48 [==============================] - 1s 11ms/step - loss: 0.6275 - accuracy: 0.8028
Epoch 24/100
48/48 [==============================] - 1s 11ms/step - loss: 0.5786 - accuracy: 0.8152
Epoch 25/100
48/48 [==============================] - 1s 12ms/step - loss: 0.5439 - accuracy: 0.8282
Epoch 26/100
48/48 [==============================] - 1s 11ms/step - loss: 0.5061 - accuracy: 0.8408
Epoch 27/100
48/48 [==============================] - 1s 11ms/step - loss: 0.4472 - accuracy: 0.8589
Epoch 28/100
48/48 [==============================] - 1s 11ms/step - loss: 0.4682 - accuracy: 0.8514
Epoch 29/100
48/48 [==============================] - 1s 11ms/step - loss: 0.4570 - accuracy: 0.8554
Epoch 30/100
48/48 [==============================] - 1s 10ms/step - loss: 0.3626 - accuracy: 0.8842
Epoch 31/100
48/48 [==============================] - 1s 12ms/step - loss: 0.5703 - accuracy: 0.8323
Epoch 32/100
48/48 [==============================] - 1s 11ms/step - loss: 0.6760 - accuracy: 0.8043
Epoch 33/100
48/48 [==============================] - 1s 11ms/step - loss: 0.8999 - accuracy: 0.7602
Epoch 34/100
48/48 [==============================] - 1s 11ms/step - loss: 0.5788 - accuracy: 0.8365
Epoch 35/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3563 - accuracy: 0.8815
Epoch 36/100
48/48 [==============================] - 1s 12ms/step - loss: 1.3720 - accuracy: 0.6820
Epoch 37/100
48/48 [==============================] - 1s 11ms/step - loss: 0.4861 - accuracy: 0.8465
Epoch 38/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3939 - accuracy: 0.8787
Epoch 39/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3233 - accuracy: 0.8991
Epoch 40/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2945 - accuracy: 0.9063
Epoch 41/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2622 - accuracy: 0.9149
Epoch 42/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2334 - accuracy: 0.9247
Epoch 43/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2294 - accuracy: 0.9285
Epoch 44/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2243 - accuracy: 0.9277
Epoch 45/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2124 - accuracy: 0.9320
Epoch 46/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2252 - accuracy: 0.9302
Epoch 47/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2013 - accuracy: 0.9330
Epoch 48/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1760 - accuracy: 0.9427
Epoch 49/100
48/48 [==============================] - 1s 13ms/step - loss: 0.1738 - accuracy: 0.9415
Epoch 50/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1710 - accuracy: 0.9498
Epoch 51/100
48/48 [==============================] - 1s 13ms/step - loss: 0.3581 - accuracy: 0.9021
Epoch 52/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1628 - accuracy: 0.9488
Epoch 53/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1453 - accuracy: 0.9503
Epoch 54/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1416 - accuracy: 0.9540
Epoch 55/100
48/48 [==============================] - 1s 13ms/step - loss: 0.1425 - accuracy: 0.9566
Epoch 56/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1432 - accuracy: 0.9555
Epoch 57/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1296 - accuracy: 0.9575
Epoch 58/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1216 - accuracy: 0.9588
Epoch 59/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1186 - accuracy: 0.9628
Epoch 60/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1082 - accuracy: 0.9673
Epoch 61/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1158 - accuracy: 0.9638
Epoch 62/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1115 - accuracy: 0.9643
Epoch 63/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1026 - accuracy: 0.9679
Epoch 64/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1088 - accuracy: 0.9663
Epoch 65/100
48/48 [==============================] - 1s 13ms/step - loss: 0.1374 - accuracy: 0.9570
Epoch 66/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0972 - accuracy: 0.9699
Epoch 67/100
48/48 [==============================] - 1s 13ms/step - loss: 0.1193 - accuracy: 0.9596
Epoch 68/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1112 - accuracy: 0.9626
Epoch 69/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1297 - accuracy: 0.9601
Epoch 70/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1534 - accuracy: 0.9558
Epoch 71/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1169 - accuracy: 0.9608
Epoch 72/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1010 - accuracy: 0.9664
Epoch 73/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0867 - accuracy: 0.9732
Epoch 74/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0759 - accuracy: 0.9739
Epoch 75/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0871 - accuracy: 0.9722
Epoch 76/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0828 - accuracy: 0.9699
Epoch 77/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0855 - accuracy: 0.9731
Epoch 78/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0864 - accuracy: 0.9744
Epoch 79/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0782 - accuracy: 0.9736
Epoch 80/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0704 - accuracy: 0.9782
Epoch 81/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1600 - accuracy: 0.9576
Epoch 82/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0730 - accuracy: 0.9757
Epoch 83/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0642 - accuracy: 0.9806
Epoch 84/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0725 - accuracy: 0.9762
Epoch 85/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0729 - accuracy: 0.9777
Epoch 86/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0774 - accuracy: 0.9772
Epoch 87/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0842 - accuracy: 0.9722
Epoch 88/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0644 - accuracy: 0.9796
Epoch 89/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0569 - accuracy: 0.9844
Epoch 90/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0680 - accuracy: 0.9786
Epoch 91/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0588 - accuracy: 0.9814
Epoch 92/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0628 - accuracy: 0.9809
Epoch 93/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0688 - accuracy: 0.9784
Epoch 94/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0632 - accuracy: 0.9797
Epoch 95/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0741 - accuracy: 0.9789
Epoch 96/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2468 - accuracy: 0.9397
Epoch 97/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3218 - accuracy: 0.9192
Epoch 98/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0875 - accuracy: 0.9747
Epoch 99/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0669 - accuracy: 0.9789
Epoch 100/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0689 - accuracy: 0.9772
24/24 [==============================] - 0s 4ms/step - loss: 0.4345 - accuracy: 0.8934
Epoch 1/100
48/48 [==============================] - 2s 11ms/step - loss: 2.6362 - accuracy: 0.0924
Epoch 2/100
48/48 [==============================] - 1s 11ms/step - loss: 2.5621 - accuracy: 0.1241
Epoch 3/100
48/48 [==============================] - 1s 11ms/step - loss: 2.5537 - accuracy: 0.1391
Epoch 4/100
48/48 [==============================] - 1s 11ms/step - loss: 2.4063 - accuracy: 0.2027
Epoch 5/100
48/48 [==============================] - 1s 12ms/step - loss: 2.2147 - accuracy: 0.2735
Epoch 6/100
48/48 [==============================] - 1s 11ms/step - loss: 2.1290 - accuracy: 0.3185
Epoch 7/100
48/48 [==============================] - 1s 12ms/step - loss: 1.8792 - accuracy: 0.3888
Epoch 8/100
48/48 [==============================] - 1s 12ms/step - loss: 1.7742 - accuracy: 0.4262
Epoch 9/100
48/48 [==============================] - 1s 11ms/step - loss: 1.6046 - accuracy: 0.4901
Epoch 10/100
48/48 [==============================] - 1s 11ms/step - loss: 1.4971 - accuracy: 0.5207
Epoch 11/100
48/48 [==============================] - 1s 12ms/step - loss: 1.3658 - accuracy: 0.5669
Epoch 12/100
48/48 [==============================] - 1s 11ms/step - loss: 1.3170 - accuracy: 0.5837
Epoch 13/100
48/48 [==============================] - 1s 11ms/step - loss: 1.2794 - accuracy: 0.6061
Epoch 14/100
48/48 [==============================] - 1s 12ms/step - loss: 1.1970 - accuracy: 0.6292
Epoch 15/100
48/48 [==============================] - 1s 11ms/step - loss: 1.6013 - accuracy: 0.5597
Epoch 16/100
48/48 [==============================] - 1s 11ms/step - loss: 1.0195 - accuracy: 0.6803
Epoch 17/100
48/48 [==============================] - 1s 12ms/step - loss: 0.8886 - accuracy: 0.7126
Epoch 18/100
48/48 [==============================] - 1s 11ms/step - loss: 0.8219 - accuracy: 0.7362
Epoch 19/100
48/48 [==============================] - 1s 12ms/step - loss: 0.7234 - accuracy: 0.7721
Epoch 20/100
48/48 [==============================] - 1s 11ms/step - loss: 0.6566 - accuracy: 0.7917
Epoch 21/100
48/48 [==============================] - 1s 11ms/step - loss: 0.7904 - accuracy: 0.7609
Epoch 22/100
48/48 [==============================] - 1s 11ms/step - loss: 0.5619 - accuracy: 0.8197
Epoch 23/100
48/48 [==============================] - 1s 11ms/step - loss: 0.5287 - accuracy: 0.8340
Epoch 24/100
48/48 [==============================] - 1s 11ms/step - loss: 0.5193 - accuracy: 0.8382
Epoch 25/100
48/48 [==============================] - 1s 11ms/step - loss: 0.4074 - accuracy: 0.8704
Epoch 26/100
48/48 [==============================] - 1s 11ms/step - loss: 0.4538 - accuracy: 0.8535
Epoch 27/100
48/48 [==============================] - 1s 11ms/step - loss: 0.4000 - accuracy: 0.8756
Epoch 28/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3425 - accuracy: 0.8867
Epoch 29/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3364 - accuracy: 0.8903
Epoch 30/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3384 - accuracy: 0.8943
Epoch 31/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2682 - accuracy: 0.9141
Epoch 32/100
48/48 [==============================] - 1s 11ms/step - loss: 0.4125 - accuracy: 0.8789
Epoch 33/100
48/48 [==============================] - 1s 13ms/step - loss: 0.2733 - accuracy: 0.9116
Epoch 34/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2323 - accuracy: 0.9246
Epoch 35/100
48/48 [==============================] - 1s 13ms/step - loss: 1.2552 - accuracy: 0.7122
Epoch 36/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3361 - accuracy: 0.8975
Epoch 37/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2789 - accuracy: 0.9083
Epoch 38/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2300 - accuracy: 0.9247
Epoch 39/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2080 - accuracy: 0.9360
Epoch 40/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1972 - accuracy: 0.9367
Epoch 41/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1553 - accuracy: 0.9503
Epoch 42/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1803 - accuracy: 0.9422
Epoch 43/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2146 - accuracy: 0.9322
Epoch 44/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1841 - accuracy: 0.9432
Epoch 45/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1381 - accuracy: 0.9551
Epoch 46/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1474 - accuracy: 0.9525
Epoch 47/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1287 - accuracy: 0.9586
Epoch 48/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1200 - accuracy: 0.9606
Epoch 49/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1046 - accuracy: 0.9674
Epoch 50/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1650 - accuracy: 0.9465
Epoch 51/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1226 - accuracy: 0.9610
Epoch 52/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1114 - accuracy: 0.9651
Epoch 53/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0952 - accuracy: 0.9708
Epoch 54/100
48/48 [==============================] - 1s 13ms/step - loss: 0.5350 - accuracy: 0.8809
Epoch 55/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1432 - accuracy: 0.9558
Epoch 56/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1406 - accuracy: 0.9566
Epoch 57/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1890 - accuracy: 0.9500
Epoch 58/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1096 - accuracy: 0.9686
Epoch 59/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0868 - accuracy: 0.9752
Epoch 60/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1402 - accuracy: 0.9595
Epoch 61/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0914 - accuracy: 0.9719
Epoch 62/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0955 - accuracy: 0.9691
Epoch 63/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0810 - accuracy: 0.9723
Epoch 64/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0723 - accuracy: 0.9777
Epoch 65/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0721 - accuracy: 0.9759
Epoch 66/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0768 - accuracy: 0.9762
Epoch 67/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0722 - accuracy: 0.9802
Epoch 68/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0725 - accuracy: 0.9789
Epoch 69/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0920 - accuracy: 0.9734
Epoch 70/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0687 - accuracy: 0.9757
Epoch 71/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0589 - accuracy: 0.9809
Epoch 72/100
48/48 [==============================] - 1s 12ms/step - loss: 1.7395 - accuracy: 0.6569
Epoch 73/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3086 - accuracy: 0.9078
Epoch 74/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2005 - accuracy: 0.9395
Epoch 75/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1497 - accuracy: 0.9512
Epoch 76/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1398 - accuracy: 0.9551
Epoch 77/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1300 - accuracy: 0.9596
Epoch 78/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0947 - accuracy: 0.9721
Epoch 79/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1019 - accuracy: 0.9671
Epoch 80/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0870 - accuracy: 0.9723
Epoch 81/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1042 - accuracy: 0.9678
Epoch 82/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0692 - accuracy: 0.9782
Epoch 83/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0728 - accuracy: 0.9794
Epoch 84/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0687 - accuracy: 0.9802
Epoch 85/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0741 - accuracy: 0.9762
Epoch 86/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0614 - accuracy: 0.9817
Epoch 87/100
48/48 [==============================] - 1s 12ms/step - loss: 0.4477 - accuracy: 0.9096
Epoch 88/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1113 - accuracy: 0.9666
Epoch 89/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0932 - accuracy: 0.9709
Epoch 90/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0717 - accuracy: 0.9774
Epoch 91/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0627 - accuracy: 0.9804
Epoch 92/100
48/48 [==============================] - 1s 11ms/step - loss: 0.8294 - accuracy: 0.8232
Epoch 93/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1421 - accuracy: 0.9561
Epoch 94/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1037 - accuracy: 0.9681
Epoch 95/100
48/48 [==============================] - 1s 10ms/step - loss: 0.1051 - accuracy: 0.9679
Epoch 96/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0836 - accuracy: 0.9741
Epoch 97/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0699 - accuracy: 0.9792
Epoch 98/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0713 - accuracy: 0.9801
Epoch 99/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0632 - accuracy: 0.9799
Epoch 100/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0507 - accuracy: 0.9847
24/24 [==============================] - 0s 4ms/step - loss: 0.3567 - accuracy: 0.9069
Epoch 1/100
48/48 [==============================] - 2s 15ms/step - loss: 2.6386 - accuracy: 0.0927
Epoch 2/100
48/48 [==============================] - 1s 12ms/step - loss: 2.5824 - accuracy: 0.1135
Epoch 3/100
48/48 [==============================] - 1s 12ms/step - loss: 2.6204 - accuracy: 0.1331
Epoch 4/100
48/48 [==============================] - 1s 13ms/step - loss: 2.4047 - accuracy: 0.1994
Epoch 5/100
48/48 [==============================] - 1s 11ms/step - loss: 2.3656 - accuracy: 0.2220
Epoch 6/100
48/48 [==============================] - 1s 12ms/step - loss: 2.1206 - accuracy: 0.2987
Epoch 7/100
48/48 [==============================] - 1s 11ms/step - loss: 2.1341 - accuracy: 0.2924
Epoch 8/100
48/48 [==============================] - 1s 11ms/step - loss: 1.9668 - accuracy: 0.3527
Epoch 9/100
48/48 [==============================] - 1s 13ms/step - loss: 1.8585 - accuracy: 0.3947
Epoch 10/100
48/48 [==============================] - 1s 12ms/step - loss: 1.7637 - accuracy: 0.4360
Epoch 11/100
48/48 [==============================] - 1s 12ms/step - loss: 1.8258 - accuracy: 0.4263
Epoch 12/100
48/48 [==============================] - 1s 12ms/step - loss: 1.5386 - accuracy: 0.4936
Epoch 13/100
48/48 [==============================] - 1s 11ms/step - loss: 1.4211 - accuracy: 0.5403
Epoch 14/100
48/48 [==============================] - 1s 12ms/step - loss: 1.3231 - accuracy: 0.5742
Epoch 15/100
48/48 [==============================] - 1s 12ms/step - loss: 1.2245 - accuracy: 0.6066
Epoch 16/100
48/48 [==============================] - 1s 11ms/step - loss: 1.1473 - accuracy: 0.6360
Epoch 17/100
48/48 [==============================] - 1s 11ms/step - loss: 1.1412 - accuracy: 0.6358
Epoch 18/100
48/48 [==============================] - 1s 11ms/step - loss: 1.0121 - accuracy: 0.6827
Epoch 19/100
48/48 [==============================] - 1s 12ms/step - loss: 0.9118 - accuracy: 0.7139
Epoch 20/100
48/48 [==============================] - 1s 11ms/step - loss: 0.9995 - accuracy: 0.6915
Epoch 21/100
48/48 [==============================] - 1s 13ms/step - loss: 0.8545 - accuracy: 0.7343
Epoch 22/100
48/48 [==============================] - 1s 11ms/step - loss: 0.7461 - accuracy: 0.7637
Epoch 23/100
48/48 [==============================] - 1s 12ms/step - loss: 0.8038 - accuracy: 0.7473
Epoch 24/100
48/48 [==============================] - 1s 11ms/step - loss: 0.6486 - accuracy: 0.7898
Epoch 25/100
48/48 [==============================] - 1s 11ms/step - loss: 0.9666 - accuracy: 0.7214
Epoch 26/100
48/48 [==============================] - 1s 12ms/step - loss: 0.6345 - accuracy: 0.7996
Epoch 27/100
48/48 [==============================] - 1s 12ms/step - loss: 0.8459 - accuracy: 0.7586
Epoch 28/100
48/48 [==============================] - 1s 12ms/step - loss: 0.5491 - accuracy: 0.8236
Epoch 29/100
48/48 [==============================] - 1s 12ms/step - loss: 0.5594 - accuracy: 0.8261
Epoch 30/100
48/48 [==============================] - 1s 11ms/step - loss: 0.4422 - accuracy: 0.8563
Epoch 31/100
48/48 [==============================] - 1s 12ms/step - loss: 0.4183 - accuracy: 0.8658
Epoch 32/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3993 - accuracy: 0.8697
Epoch 33/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3694 - accuracy: 0.8814
Epoch 34/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3551 - accuracy: 0.8827
Epoch 35/100
48/48 [==============================] - 1s 11ms/step - loss: 0.8237 - accuracy: 0.7749
Epoch 36/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3828 - accuracy: 0.8795
Epoch 37/100
48/48 [==============================] - 1s 11ms/step - loss: 0.4518 - accuracy: 0.8648
Epoch 38/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3046 - accuracy: 0.8995
Epoch 39/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2931 - accuracy: 0.9045
Epoch 40/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2452 - accuracy: 0.9217
Epoch 41/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2502 - accuracy: 0.9184
Epoch 42/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2299 - accuracy: 0.9254
Epoch 43/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2037 - accuracy: 0.9309
Epoch 44/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2180 - accuracy: 0.9277
Epoch 45/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1904 - accuracy: 0.9384
Epoch 46/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3751 - accuracy: 0.8982
Epoch 47/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2175 - accuracy: 0.9312
Epoch 48/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1936 - accuracy: 0.9392
Epoch 49/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1659 - accuracy: 0.9468
Epoch 50/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1603 - accuracy: 0.9487
Epoch 51/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1369 - accuracy: 0.9550
Epoch 52/100
48/48 [==============================] - 1s 13ms/step - loss: 0.1585 - accuracy: 0.9507
Epoch 53/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1509 - accuracy: 0.9518
Epoch 54/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1191 - accuracy: 0.9618
Epoch 55/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1508 - accuracy: 0.9533
Epoch 56/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1237 - accuracy: 0.9615
Epoch 57/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1157 - accuracy: 0.9641
Epoch 58/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1424 - accuracy: 0.9561
Epoch 59/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1154 - accuracy: 0.9621
Epoch 60/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1225 - accuracy: 0.9580
Epoch 61/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1022 - accuracy: 0.9663
Epoch 62/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1138 - accuracy: 0.9631
Epoch 63/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3921 - accuracy: 0.9033
Epoch 64/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1371 - accuracy: 0.9558
Epoch 65/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1250 - accuracy: 0.9634
Epoch 66/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0966 - accuracy: 0.9683
Epoch 67/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0848 - accuracy: 0.9737
Epoch 68/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0901 - accuracy: 0.9726
Epoch 69/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0791 - accuracy: 0.9746
Epoch 70/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0978 - accuracy: 0.9714
Epoch 71/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0879 - accuracy: 0.9733
Epoch 72/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0879 - accuracy: 0.9723
Epoch 73/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0886 - accuracy: 0.9713
Epoch 74/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0829 - accuracy: 0.9762
Epoch 75/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0994 - accuracy: 0.9694
Epoch 76/100
48/48 [==============================] - 1s 13ms/step - loss: 0.0894 - accuracy: 0.9751
Epoch 77/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0812 - accuracy: 0.9723
Epoch 78/100
48/48 [==============================] - 1s 13ms/step - loss: 0.0671 - accuracy: 0.9789
Epoch 79/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0803 - accuracy: 0.9742
Epoch 80/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0848 - accuracy: 0.9742
Epoch 81/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0802 - accuracy: 0.9744
Epoch 82/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0739 - accuracy: 0.9767
Epoch 83/100
48/48 [==============================] - 1s 12ms/step - loss: 0.6251 - accuracy: 0.8598
Epoch 84/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1137 - accuracy: 0.9664
Epoch 85/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0863 - accuracy: 0.9711
Epoch 86/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0820 - accuracy: 0.9754
Epoch 87/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0796 - accuracy: 0.9739
Epoch 88/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0753 - accuracy: 0.9771
Epoch 89/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0596 - accuracy: 0.9809
Epoch 90/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0686 - accuracy: 0.9774
Epoch 91/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0711 - accuracy: 0.9784
Epoch 92/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0620 - accuracy: 0.9807
Epoch 93/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0638 - accuracy: 0.9801
Epoch 94/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0536 - accuracy: 0.9842
Epoch 95/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0636 - accuracy: 0.9811
Epoch 96/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0555 - accuracy: 0.9824
Epoch 97/100
48/48 [==============================] - 1s 13ms/step - loss: 0.3839 - accuracy: 0.9118
Epoch 98/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0916 - accuracy: 0.9733
Epoch 99/100
48/48 [==============================] - 1s 13ms/step - loss: 0.2027 - accuracy: 0.9490
Epoch 100/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1150 - accuracy: 0.9649
24/24 [==============================] - 0s 5ms/step - loss: 0.3625 - accuracy: 0.9056
Epoch 1/100
48/48 [==============================] - 1s 8ms/step - loss: 2.6345 - accuracy: 0.0876
Epoch 2/100
48/48 [==============================] - 0s 9ms/step - loss: 2.5416 - accuracy: 0.1238
Epoch 3/100
48/48 [==============================] - 0s 9ms/step - loss: 2.5281 - accuracy: 0.1412
Epoch 4/100
48/48 [==============================] - 0s 8ms/step - loss: 2.3914 - accuracy: 0.1775
Epoch 5/100
48/48 [==============================] - 0s 9ms/step - loss: 2.2287 - accuracy: 0.2556
Epoch 6/100
48/48 [==============================] - 0s 9ms/step - loss: 2.1241 - accuracy: 0.2956
Epoch 7/100
48/48 [==============================] - 0s 8ms/step - loss: 1.9593 - accuracy: 0.3518
Epoch 8/100
48/48 [==============================] - 0s 9ms/step - loss: 1.8545 - accuracy: 0.3932
Epoch 9/100
48/48 [==============================] - 0s 9ms/step - loss: 1.6812 - accuracy: 0.4425
Epoch 10/100
48/48 [==============================] - 0s 8ms/step - loss: 1.5725 - accuracy: 0.4899
Epoch 11/100
48/48 [==============================] - 1s 11ms/step - loss: 1.4285 - accuracy: 0.5336
Epoch 12/100
48/48 [==============================] - 0s 9ms/step - loss: 1.3694 - accuracy: 0.5550
Epoch 13/100
48/48 [==============================] - 1s 10ms/step - loss: 1.2726 - accuracy: 0.5784
Epoch 14/100
48/48 [==============================] - 0s 9ms/step - loss: 1.2035 - accuracy: 0.6045
Epoch 15/100
48/48 [==============================] - 0s 10ms/step - loss: 1.1345 - accuracy: 0.6258
Epoch 16/100
48/48 [==============================] - 0s 10ms/step - loss: 1.5423 - accuracy: 0.5169
Epoch 17/100
48/48 [==============================] - 1s 12ms/step - loss: 1.2401 - accuracy: 0.6065
Epoch 18/100
48/48 [==============================] - 0s 10ms/step - loss: 1.0521 - accuracy: 0.6560
Epoch 19/100
48/48 [==============================] - 0s 9ms/step - loss: 1.0020 - accuracy: 0.6813
Epoch 20/100
48/48 [==============================] - 1s 11ms/step - loss: 1.0515 - accuracy: 0.6552
Epoch 21/100
48/48 [==============================] - 0s 10ms/step - loss: 0.9308 - accuracy: 0.6962
Epoch 22/100
48/48 [==============================] - 0s 8ms/step - loss: 0.8731 - accuracy: 0.7114
Epoch 23/100
48/48 [==============================] - 0s 9ms/step - loss: 0.7994 - accuracy: 0.7394
Epoch 24/100
48/48 [==============================] - 0s 9ms/step - loss: 0.7654 - accuracy: 0.7562
Epoch 25/100
48/48 [==============================] - 0s 9ms/step - loss: 0.7122 - accuracy: 0.7619
Epoch 26/100
48/48 [==============================] - 0s 9ms/step - loss: 0.8392 - accuracy: 0.7346
Epoch 27/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6464 - accuracy: 0.7858
Epoch 28/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6308 - accuracy: 0.7963
Epoch 29/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5988 - accuracy: 0.8059
Epoch 30/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5506 - accuracy: 0.8239
Epoch 31/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5609 - accuracy: 0.8129
Epoch 32/100
48/48 [==============================] - 0s 9ms/step - loss: 0.7540 - accuracy: 0.7644
Epoch 33/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5669 - accuracy: 0.8175
Epoch 34/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4833 - accuracy: 0.8456
Epoch 35/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5037 - accuracy: 0.8335
Epoch 36/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4251 - accuracy: 0.8591
Epoch 37/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5708 - accuracy: 0.8076
Epoch 38/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5068 - accuracy: 0.8298
Epoch 39/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4482 - accuracy: 0.8538
Epoch 40/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3897 - accuracy: 0.8721
Epoch 41/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4024 - accuracy: 0.8669
Epoch 42/100
48/48 [==============================] - 0s 8ms/step - loss: 0.3884 - accuracy: 0.8712
Epoch 43/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3694 - accuracy: 0.8817
Epoch 44/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3713 - accuracy: 0.8822
Epoch 45/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3384 - accuracy: 0.8873
Epoch 46/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3159 - accuracy: 0.8946
Epoch 47/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3070 - accuracy: 0.8996
Epoch 48/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3421 - accuracy: 0.8877
Epoch 49/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2959 - accuracy: 0.9020
Epoch 50/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2814 - accuracy: 0.9116
Epoch 51/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2727 - accuracy: 0.9151
Epoch 52/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2988 - accuracy: 0.9023
Epoch 53/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2625 - accuracy: 0.9131
Epoch 54/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2626 - accuracy: 0.9139
Epoch 55/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2562 - accuracy: 0.9159
Epoch 56/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2560 - accuracy: 0.9151
Epoch 57/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4821 - accuracy: 0.8496
Epoch 58/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4544 - accuracy: 0.8558
Epoch 59/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2781 - accuracy: 0.9098
Epoch 60/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2622 - accuracy: 0.9176
Epoch 61/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2874 - accuracy: 0.9038
Epoch 62/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2621 - accuracy: 0.9146
Epoch 63/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2225 - accuracy: 0.9300
Epoch 64/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2100 - accuracy: 0.9325
Epoch 65/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2035 - accuracy: 0.9340
Epoch 66/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1900 - accuracy: 0.9382
Epoch 67/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2195 - accuracy: 0.9292
Epoch 68/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1931 - accuracy: 0.9337
Epoch 69/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1837 - accuracy: 0.9400
Epoch 70/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1892 - accuracy: 0.9379
Epoch 71/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1951 - accuracy: 0.9372
Epoch 72/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1700 - accuracy: 0.9450
Epoch 73/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1735 - accuracy: 0.9428
Epoch 74/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2015 - accuracy: 0.9334
Epoch 75/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1925 - accuracy: 0.9412
Epoch 76/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1700 - accuracy: 0.9427
Epoch 77/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1643 - accuracy: 0.9475
Epoch 78/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1610 - accuracy: 0.9485
Epoch 79/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1505 - accuracy: 0.9501
Epoch 80/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4968 - accuracy: 0.8514
Epoch 81/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2214 - accuracy: 0.9285
Epoch 82/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1754 - accuracy: 0.9457
Epoch 83/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1725 - accuracy: 0.9427
Epoch 84/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2074 - accuracy: 0.9329
Epoch 85/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1612 - accuracy: 0.9458
Epoch 86/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1471 - accuracy: 0.9498
Epoch 87/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1814 - accuracy: 0.9428
Epoch 88/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1592 - accuracy: 0.9503
Epoch 89/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1451 - accuracy: 0.9556
Epoch 90/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1511 - accuracy: 0.9492
Epoch 91/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2176 - accuracy: 0.9337
Epoch 92/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4598 - accuracy: 0.8649
Epoch 93/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1815 - accuracy: 0.9437
Epoch 94/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1850 - accuracy: 0.9427
Epoch 95/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3497 - accuracy: 0.8942
Epoch 96/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2296 - accuracy: 0.9227
Epoch 97/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1565 - accuracy: 0.9478
Epoch 98/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1459 - accuracy: 0.9563
Epoch 99/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1383 - accuracy: 0.9545
Epoch 100/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1300 - accuracy: 0.9600
24/24 [==============================] - 0s 4ms/step - loss: 0.3484 - accuracy: 0.9120
Epoch 1/100
48/48 [==============================] - 1s 10ms/step - loss: 2.6478 - accuracy: 0.0879
Epoch 2/100
48/48 [==============================] - 0s 10ms/step - loss: 2.5890 - accuracy: 0.1113
Epoch 3/100
48/48 [==============================] - 0s 9ms/step - loss: 2.5008 - accuracy: 0.1377
Epoch 4/100
48/48 [==============================] - 0s 9ms/step - loss: 2.4010 - accuracy: 0.1608
Epoch 5/100
48/48 [==============================] - 0s 9ms/step - loss: 2.2943 - accuracy: 0.1922
Epoch 6/100
48/48 [==============================] - 0s 9ms/step - loss: 2.1759 - accuracy: 0.2527
Epoch 7/100
48/48 [==============================] - 0s 9ms/step - loss: 1.9628 - accuracy: 0.3369
Epoch 8/100
48/48 [==============================] - 0s 10ms/step - loss: 1.9064 - accuracy: 0.3658
Epoch 9/100
48/48 [==============================] - 0s 9ms/step - loss: 1.7794 - accuracy: 0.4110
Epoch 10/100
48/48 [==============================] - 0s 10ms/step - loss: 1.6464 - accuracy: 0.4597
Epoch 11/100
48/48 [==============================] - 0s 9ms/step - loss: 1.4728 - accuracy: 0.5155
Epoch 12/100
48/48 [==============================] - 0s 9ms/step - loss: 1.4564 - accuracy: 0.5285
Epoch 13/100
48/48 [==============================] - 0s 9ms/step - loss: 1.2947 - accuracy: 0.5795
Epoch 14/100
48/48 [==============================] - 0s 9ms/step - loss: 1.2925 - accuracy: 0.5747
Epoch 15/100
48/48 [==============================] - 0s 9ms/step - loss: 1.1625 - accuracy: 0.6195
Epoch 16/100
48/48 [==============================] - 0s 9ms/step - loss: 1.1500 - accuracy: 0.6303
Epoch 17/100
48/48 [==============================] - 0s 9ms/step - loss: 1.0033 - accuracy: 0.6772
Epoch 18/100
48/48 [==============================] - 0s 9ms/step - loss: 1.1194 - accuracy: 0.6393
Epoch 19/100
48/48 [==============================] - 0s 9ms/step - loss: 0.9234 - accuracy: 0.7036
Epoch 20/100
48/48 [==============================] - 0s 10ms/step - loss: 0.8618 - accuracy: 0.7214
Epoch 21/100
48/48 [==============================] - 0s 10ms/step - loss: 0.8639 - accuracy: 0.7066
Epoch 22/100
48/48 [==============================] - 0s 9ms/step - loss: 0.7963 - accuracy: 0.7390
Epoch 23/100
48/48 [==============================] - 0s 9ms/step - loss: 0.7459 - accuracy: 0.7576
Epoch 24/100
48/48 [==============================] - 0s 10ms/step - loss: 0.6516 - accuracy: 0.7839
Epoch 25/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6503 - accuracy: 0.7888
Epoch 26/100
48/48 [==============================] - 1s 11ms/step - loss: 0.7125 - accuracy: 0.7719
Epoch 27/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5669 - accuracy: 0.8182
Epoch 28/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5862 - accuracy: 0.8081
Epoch 29/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5314 - accuracy: 0.8289
Epoch 30/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4934 - accuracy: 0.8388
Epoch 31/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4893 - accuracy: 0.8393
Epoch 32/100
48/48 [==============================] - 0s 10ms/step - loss: 0.6205 - accuracy: 0.8069
Epoch 33/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5122 - accuracy: 0.8339
Epoch 34/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5075 - accuracy: 0.8332
Epoch 35/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4242 - accuracy: 0.8628
Epoch 36/100
48/48 [==============================] - 1s 11ms/step - loss: 0.4093 - accuracy: 0.8707
Epoch 37/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3939 - accuracy: 0.8719
Epoch 38/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3672 - accuracy: 0.8814
Epoch 39/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3689 - accuracy: 0.8842
Epoch 40/100
48/48 [==============================] - 0s 8ms/step - loss: 0.3390 - accuracy: 0.8925
Epoch 41/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3440 - accuracy: 0.8895
Epoch 42/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3026 - accuracy: 0.9023
Epoch 43/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2887 - accuracy: 0.9070
Epoch 44/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2892 - accuracy: 0.9058
Epoch 45/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2707 - accuracy: 0.9103
Epoch 46/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3110 - accuracy: 0.8983
Epoch 47/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2793 - accuracy: 0.9143
Epoch 48/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2462 - accuracy: 0.9198
Epoch 49/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3253 - accuracy: 0.8970
Epoch 50/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4704 - accuracy: 0.8536
Epoch 51/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2960 - accuracy: 0.9030
Epoch 52/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2530 - accuracy: 0.9183
Epoch 53/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3039 - accuracy: 0.9025
Epoch 54/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3713 - accuracy: 0.8814
Epoch 55/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2372 - accuracy: 0.9219
Epoch 56/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2291 - accuracy: 0.9292
Epoch 57/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2235 - accuracy: 0.9322
Epoch 58/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2382 - accuracy: 0.9246
Epoch 59/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1990 - accuracy: 0.9334
Epoch 60/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2118 - accuracy: 0.9320
Epoch 61/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1959 - accuracy: 0.9390
Epoch 62/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1786 - accuracy: 0.9420
Epoch 63/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1958 - accuracy: 0.9402
Epoch 64/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1969 - accuracy: 0.9387
Epoch 65/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2505 - accuracy: 0.9219
Epoch 66/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1842 - accuracy: 0.9423
Epoch 67/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1586 - accuracy: 0.9487
Epoch 68/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1718 - accuracy: 0.9460
Epoch 69/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1491 - accuracy: 0.9518
Epoch 70/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1508 - accuracy: 0.9507
Epoch 71/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1685 - accuracy: 0.9488
Epoch 72/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1752 - accuracy: 0.9410
Epoch 73/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1725 - accuracy: 0.9422
Epoch 74/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1471 - accuracy: 0.9510
Epoch 75/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1518 - accuracy: 0.9520
Epoch 76/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1587 - accuracy: 0.9480
Epoch 77/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1852 - accuracy: 0.9414
Epoch 78/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2364 - accuracy: 0.9272
Epoch 79/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1322 - accuracy: 0.9585
Epoch 80/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1430 - accuracy: 0.9546
Epoch 81/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1244 - accuracy: 0.9610
Epoch 82/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1807 - accuracy: 0.9420
Epoch 83/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1349 - accuracy: 0.9568
Epoch 84/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1126 - accuracy: 0.9641
Epoch 85/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1003 - accuracy: 0.9669
Epoch 86/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1351 - accuracy: 0.9585
Epoch 87/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1438 - accuracy: 0.9548
Epoch 88/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1257 - accuracy: 0.9603
Epoch 89/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1206 - accuracy: 0.9630
Epoch 90/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1212 - accuracy: 0.9620
Epoch 91/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1146 - accuracy: 0.9651
Epoch 92/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1099 - accuracy: 0.9638
Epoch 93/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1135 - accuracy: 0.9653
Epoch 94/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1200 - accuracy: 0.9634
Epoch 95/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1082 - accuracy: 0.9681
Epoch 96/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1439 - accuracy: 0.9570
Epoch 97/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1313 - accuracy: 0.9610
Epoch 98/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1039 - accuracy: 0.9693
Epoch 99/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1114 - accuracy: 0.9643
Epoch 100/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1786 - accuracy: 0.9462
24/24 [==============================] - 0s 4ms/step - loss: 0.3235 - accuracy: 0.9156
Epoch 1/100
48/48 [==============================] - 1s 10ms/step - loss: 2.6307 - accuracy: 0.0964
Epoch 2/100
48/48 [==============================] - 0s 8ms/step - loss: 2.5219 - accuracy: 0.1075
Epoch 3/100
48/48 [==============================] - 0s 9ms/step - loss: 2.4405 - accuracy: 0.1430
Epoch 4/100
48/48 [==============================] - 0s 10ms/step - loss: 2.3475 - accuracy: 0.1774
Epoch 5/100
48/48 [==============================] - 0s 9ms/step - loss: 2.1740 - accuracy: 0.2495
Epoch 6/100
48/48 [==============================] - 0s 10ms/step - loss: 2.0785 - accuracy: 0.2982
Epoch 7/100
48/48 [==============================] - 0s 9ms/step - loss: 1.8907 - accuracy: 0.3662
Epoch 8/100
48/48 [==============================] - 0s 9ms/step - loss: 1.7761 - accuracy: 0.4012
Epoch 9/100
48/48 [==============================] - 0s 8ms/step - loss: 1.6601 - accuracy: 0.4464
Epoch 10/100
48/48 [==============================] - 0s 10ms/step - loss: 1.5544 - accuracy: 0.4875
Epoch 11/100
48/48 [==============================] - 0s 9ms/step - loss: 1.4156 - accuracy: 0.5340
Epoch 12/100
48/48 [==============================] - 0s 9ms/step - loss: 1.3344 - accuracy: 0.5621
Epoch 13/100
48/48 [==============================] - 0s 9ms/step - loss: 1.3043 - accuracy: 0.5775
Epoch 14/100
48/48 [==============================] - 0s 9ms/step - loss: 1.1180 - accuracy: 0.6353
Epoch 15/100
48/48 [==============================] - 0s 9ms/step - loss: 1.0499 - accuracy: 0.6549
Epoch 16/100
48/48 [==============================] - 0s 9ms/step - loss: 1.0075 - accuracy: 0.6700
Epoch 17/100
48/48 [==============================] - 0s 9ms/step - loss: 1.1121 - accuracy: 0.6365
Epoch 18/100
48/48 [==============================] - 0s 9ms/step - loss: 0.9143 - accuracy: 0.7009
Epoch 19/100
48/48 [==============================] - 0s 10ms/step - loss: 0.8846 - accuracy: 0.7086
Epoch 20/100
48/48 [==============================] - 0s 9ms/step - loss: 0.8015 - accuracy: 0.7463
Epoch 21/100
48/48 [==============================] - 0s 9ms/step - loss: 0.7834 - accuracy: 0.7513
Epoch 22/100
48/48 [==============================] - 0s 8ms/step - loss: 0.7431 - accuracy: 0.7608
Epoch 23/100
48/48 [==============================] - 0s 9ms/step - loss: 0.7375 - accuracy: 0.7603
Epoch 24/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6308 - accuracy: 0.7976
Epoch 25/100
48/48 [==============================] - 0s 8ms/step - loss: 0.6246 - accuracy: 0.7955
Epoch 26/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5969 - accuracy: 0.8061
Epoch 27/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6460 - accuracy: 0.7898
Epoch 28/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5866 - accuracy: 0.8138
Epoch 29/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5198 - accuracy: 0.8352
Epoch 30/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4953 - accuracy: 0.8448
Epoch 31/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5299 - accuracy: 0.8284
Epoch 32/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4755 - accuracy: 0.8457
Epoch 33/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4712 - accuracy: 0.8485
Epoch 34/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4126 - accuracy: 0.8659
Epoch 35/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3803 - accuracy: 0.8789
Epoch 36/100
48/48 [==============================] - 0s 8ms/step - loss: 0.4124 - accuracy: 0.8674
Epoch 37/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4206 - accuracy: 0.8624
Epoch 38/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3608 - accuracy: 0.8895
Epoch 39/100
48/48 [==============================] - 0s 8ms/step - loss: 0.3475 - accuracy: 0.8862
Epoch 40/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3451 - accuracy: 0.8908
Epoch 41/100
48/48 [==============================] - 0s 8ms/step - loss: 0.3681 - accuracy: 0.8804
Epoch 42/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3790 - accuracy: 0.8782
Epoch 43/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3313 - accuracy: 0.8952
Epoch 44/100
48/48 [==============================] - 0s 8ms/step - loss: 0.2796 - accuracy: 0.9100
Epoch 45/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2658 - accuracy: 0.9141
Epoch 46/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3469 - accuracy: 0.8887
Epoch 47/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2954 - accuracy: 0.9075
Epoch 48/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2502 - accuracy: 0.9178
Epoch 49/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3192 - accuracy: 0.8958
Epoch 50/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3087 - accuracy: 0.9001
Epoch 51/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2522 - accuracy: 0.9174
Epoch 52/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2388 - accuracy: 0.9244
Epoch 53/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2228 - accuracy: 0.9296
Epoch 54/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2288 - accuracy: 0.9262
Epoch 55/100
48/48 [==============================] - 0s 8ms/step - loss: 0.2204 - accuracy: 0.9257
Epoch 56/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2099 - accuracy: 0.9320
Epoch 57/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2820 - accuracy: 0.9046
Epoch 58/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2259 - accuracy: 0.9264
Epoch 59/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1851 - accuracy: 0.9404
Epoch 60/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1905 - accuracy: 0.9395
Epoch 61/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1954 - accuracy: 0.9349
Epoch 62/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2102 - accuracy: 0.9335
Epoch 63/100
48/48 [==============================] - 0s 8ms/step - loss: 0.2376 - accuracy: 0.9242
Epoch 64/100
48/48 [==============================] - 0s 8ms/step - loss: 0.2828 - accuracy: 0.9139
Epoch 65/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1874 - accuracy: 0.9414
Epoch 66/100
48/48 [==============================] - 0s 8ms/step - loss: 0.2140 - accuracy: 0.9299
Epoch 67/100
48/48 [==============================] - 0s 8ms/step - loss: 0.2149 - accuracy: 0.9311
Epoch 68/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1837 - accuracy: 0.9414
Epoch 69/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1768 - accuracy: 0.9463
Epoch 70/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2049 - accuracy: 0.9334
Epoch 71/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1453 - accuracy: 0.9530
Epoch 72/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2960 - accuracy: 0.9116
Epoch 73/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1707 - accuracy: 0.9452
Epoch 74/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1400 - accuracy: 0.9545
Epoch 75/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1359 - accuracy: 0.9533
Epoch 76/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2150 - accuracy: 0.9339
Epoch 77/100
48/48 [==============================] - 0s 8ms/step - loss: 0.1482 - accuracy: 0.9530
Epoch 78/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1574 - accuracy: 0.9505
Epoch 79/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2398 - accuracy: 0.9247
Epoch 80/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1602 - accuracy: 0.9497
Epoch 81/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1382 - accuracy: 0.9575
Epoch 82/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1837 - accuracy: 0.9404
Epoch 83/100
48/48 [==============================] - 0s 8ms/step - loss: 0.3232 - accuracy: 0.9003
Epoch 84/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1582 - accuracy: 0.9487
Epoch 85/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1520 - accuracy: 0.9528
Epoch 86/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1525 - accuracy: 0.9526
Epoch 87/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1409 - accuracy: 0.9536
Epoch 88/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1291 - accuracy: 0.9591
Epoch 89/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1220 - accuracy: 0.9608
Epoch 90/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1098 - accuracy: 0.9644
Epoch 91/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1179 - accuracy: 0.9626
Epoch 92/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1155 - accuracy: 0.9639
Epoch 93/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1282 - accuracy: 0.9578
Epoch 94/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1286 - accuracy: 0.9586
Epoch 95/100
48/48 [==============================] - 0s 9ms/step - loss: 0.0919 - accuracy: 0.9709
Epoch 96/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1020 - accuracy: 0.9656
Epoch 97/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1027 - accuracy: 0.9656
Epoch 98/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1428 - accuracy: 0.9573
Epoch 99/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3779 - accuracy: 0.8860
Epoch 100/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1505 - accuracy: 0.9535
24/24 [==============================] - 0s 4ms/step - loss: 0.3759 - accuracy: 0.8946
Epoch 1/100
48/48 [==============================] - 2s 12ms/step - loss: 2.6327 - accuracy: 0.1017
Epoch 2/100
48/48 [==============================] - 0s 10ms/step - loss: 2.5506 - accuracy: 0.1369
Epoch 3/100
48/48 [==============================] - 1s 11ms/step - loss: 2.5031 - accuracy: 0.1492
Epoch 4/100
48/48 [==============================] - 0s 10ms/step - loss: 2.3834 - accuracy: 0.1984
Epoch 5/100
48/48 [==============================] - 1s 11ms/step - loss: 2.2858 - accuracy: 0.2527
Epoch 6/100
48/48 [==============================] - 0s 10ms/step - loss: 2.1278 - accuracy: 0.2984
Epoch 7/100
48/48 [==============================] - 0s 10ms/step - loss: 2.0460 - accuracy: 0.3348
Epoch 8/100
48/48 [==============================] - 0s 10ms/step - loss: 1.9106 - accuracy: 0.3822
Epoch 9/100
48/48 [==============================] - 0s 10ms/step - loss: 1.8447 - accuracy: 0.4074
Epoch 10/100
48/48 [==============================] - 0s 10ms/step - loss: 1.7337 - accuracy: 0.4458
Epoch 11/100
48/48 [==============================] - 0s 10ms/step - loss: 1.6180 - accuracy: 0.4811
Epoch 12/100
48/48 [==============================] - 1s 10ms/step - loss: 1.5300 - accuracy: 0.5076
Epoch 13/100
48/48 [==============================] - 0s 10ms/step - loss: 1.4887 - accuracy: 0.5201
Epoch 14/100
48/48 [==============================] - 1s 11ms/step - loss: 1.3509 - accuracy: 0.5583
Epoch 15/100
48/48 [==============================] - 0s 10ms/step - loss: 1.3048 - accuracy: 0.5808
Epoch 16/100
48/48 [==============================] - 1s 11ms/step - loss: 1.2222 - accuracy: 0.6108
Epoch 17/100
48/48 [==============================] - 0s 10ms/step - loss: 1.1193 - accuracy: 0.6436
Epoch 18/100
48/48 [==============================] - 0s 10ms/step - loss: 1.0773 - accuracy: 0.6537
Epoch 19/100
48/48 [==============================] - 0s 10ms/step - loss: 0.9966 - accuracy: 0.6818
Epoch 20/100
48/48 [==============================] - 1s 11ms/step - loss: 0.9903 - accuracy: 0.6901
Epoch 21/100
48/48 [==============================] - 0s 10ms/step - loss: 0.9020 - accuracy: 0.7160
Epoch 22/100
48/48 [==============================] - 0s 10ms/step - loss: 0.8346 - accuracy: 0.7398
Epoch 23/100
48/48 [==============================] - 1s 11ms/step - loss: 0.7837 - accuracy: 0.7494
Epoch 24/100
48/48 [==============================] - 0s 10ms/step - loss: 0.7562 - accuracy: 0.7597
Epoch 25/100
48/48 [==============================] - 0s 10ms/step - loss: 0.7423 - accuracy: 0.7664
Epoch 26/100
48/48 [==============================] - 0s 10ms/step - loss: 0.6590 - accuracy: 0.7881
Epoch 27/100
48/48 [==============================] - 1s 10ms/step - loss: 0.6550 - accuracy: 0.7918
Epoch 28/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5878 - accuracy: 0.8159
Epoch 29/100
48/48 [==============================] - 1s 10ms/step - loss: 0.5755 - accuracy: 0.8121
Epoch 30/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5332 - accuracy: 0.8318
Epoch 31/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5042 - accuracy: 0.8362
Epoch 32/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5049 - accuracy: 0.8421
Epoch 33/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4629 - accuracy: 0.8599
Epoch 34/100
48/48 [==============================] - 1s 11ms/step - loss: 0.4181 - accuracy: 0.8682
Epoch 35/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4450 - accuracy: 0.8629
Epoch 36/100
48/48 [==============================] - 1s 10ms/step - loss: 0.3979 - accuracy: 0.8707
Epoch 37/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3923 - accuracy: 0.8752
Epoch 38/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3565 - accuracy: 0.8902
Epoch 39/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3609 - accuracy: 0.8848
Epoch 40/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3256 - accuracy: 0.9010
Epoch 41/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3287 - accuracy: 0.8963
Epoch 42/100
48/48 [==============================] - 1s 10ms/step - loss: 0.3087 - accuracy: 0.9018
Epoch 43/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3041 - accuracy: 0.9023
Epoch 44/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2793 - accuracy: 0.9121
Epoch 45/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2923 - accuracy: 0.9078
Epoch 46/100
48/48 [==============================] - 1s 10ms/step - loss: 0.2868 - accuracy: 0.9114
Epoch 47/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2584 - accuracy: 0.9204
Epoch 48/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2517 - accuracy: 0.9216
Epoch 49/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2472 - accuracy: 0.9194
Epoch 50/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2317 - accuracy: 0.9272
Epoch 51/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2360 - accuracy: 0.9271
Epoch 52/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2342 - accuracy: 0.9300
Epoch 53/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2295 - accuracy: 0.9339
Epoch 54/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2002 - accuracy: 0.9408
Epoch 55/100
48/48 [==============================] - 1s 10ms/step - loss: 0.1993 - accuracy: 0.9384
Epoch 56/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2182 - accuracy: 0.9389
Epoch 57/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2077 - accuracy: 0.9349
Epoch 58/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1874 - accuracy: 0.9390
Epoch 59/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1856 - accuracy: 0.9427
Epoch 60/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1684 - accuracy: 0.9485
Epoch 61/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2002 - accuracy: 0.9433
Epoch 62/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1696 - accuracy: 0.9510
Epoch 63/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1596 - accuracy: 0.9518
Epoch 64/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1729 - accuracy: 0.9453
Epoch 65/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1543 - accuracy: 0.9546
Epoch 66/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1525 - accuracy: 0.9556
Epoch 67/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1698 - accuracy: 0.9495
Epoch 68/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1536 - accuracy: 0.9541
Epoch 69/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1510 - accuracy: 0.9545
Epoch 70/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1532 - accuracy: 0.9553
Epoch 71/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1296 - accuracy: 0.9596
Epoch 72/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1466 - accuracy: 0.9575
Epoch 73/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1559 - accuracy: 0.9503
Epoch 74/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1391 - accuracy: 0.9590
Epoch 75/100
48/48 [==============================] - 1s 10ms/step - loss: 0.1428 - accuracy: 0.9575
Epoch 76/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1537 - accuracy: 0.9581
Epoch 77/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1442 - accuracy: 0.9563
Epoch 78/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1425 - accuracy: 0.9570
Epoch 79/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1246 - accuracy: 0.9631
Epoch 80/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1376 - accuracy: 0.9610
Epoch 81/100
48/48 [==============================] - 1s 10ms/step - loss: 0.1336 - accuracy: 0.9613
Epoch 82/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1549 - accuracy: 0.9598
Epoch 83/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1350 - accuracy: 0.9605
Epoch 84/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0995 - accuracy: 0.9706
Epoch 85/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1342 - accuracy: 0.9644
Epoch 86/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1404 - accuracy: 0.9614
Epoch 87/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1202 - accuracy: 0.9649
Epoch 88/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1316 - accuracy: 0.9623
Epoch 89/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1224 - accuracy: 0.9639
Epoch 90/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1196 - accuracy: 0.9634
Epoch 91/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1282 - accuracy: 0.9610
Epoch 92/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1133 - accuracy: 0.9699
Epoch 93/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1061 - accuracy: 0.9698
Epoch 94/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1055 - accuracy: 0.9679
Epoch 95/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1341 - accuracy: 0.9626
Epoch 96/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1072 - accuracy: 0.9674
Epoch 97/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1204 - accuracy: 0.9628
Epoch 98/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1250 - accuracy: 0.9661
Epoch 99/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1277 - accuracy: 0.9624
Epoch 100/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1206 - accuracy: 0.9696
24/24 [==============================] - 0s 4ms/step - loss: 0.4361 - accuracy: 0.9003
Epoch 1/100
48/48 [==============================] - 1s 10ms/step - loss: 2.6414 - accuracy: 0.0947
Epoch 2/100
48/48 [==============================] - 0s 10ms/step - loss: 2.5718 - accuracy: 0.1223
Epoch 3/100
48/48 [==============================] - 0s 10ms/step - loss: 2.5012 - accuracy: 0.1540
Epoch 4/100
48/48 [==============================] - 0s 10ms/step - loss: 2.3900 - accuracy: 0.2157
Epoch 5/100
48/48 [==============================] - 0s 10ms/step - loss: 2.2269 - accuracy: 0.2711
Epoch 6/100
48/48 [==============================] - 0s 10ms/step - loss: 2.1133 - accuracy: 0.3167
Epoch 7/100
48/48 [==============================] - 1s 10ms/step - loss: 2.0144 - accuracy: 0.3479
Epoch 8/100
48/48 [==============================] - 0s 10ms/step - loss: 1.8801 - accuracy: 0.3986
Epoch 9/100
48/48 [==============================] - 0s 10ms/step - loss: 1.7909 - accuracy: 0.4283
Epoch 10/100
48/48 [==============================] - 0s 10ms/step - loss: 1.7007 - accuracy: 0.4574
Epoch 11/100
48/48 [==============================] - 0s 10ms/step - loss: 1.6305 - accuracy: 0.4775
Epoch 12/100
48/48 [==============================] - 1s 11ms/step - loss: 1.5455 - accuracy: 0.5066
Epoch 13/100
48/48 [==============================] - 1s 11ms/step - loss: 1.4195 - accuracy: 0.5557
Epoch 14/100
48/48 [==============================] - 1s 11ms/step - loss: 1.3370 - accuracy: 0.5790
Epoch 15/100
48/48 [==============================] - 1s 11ms/step - loss: 1.2769 - accuracy: 0.5910
Epoch 16/100
48/48 [==============================] - 1s 11ms/step - loss: 1.1889 - accuracy: 0.6182
Epoch 17/100
48/48 [==============================] - 0s 10ms/step - loss: 1.1403 - accuracy: 0.6347
Epoch 18/100
48/48 [==============================] - 0s 10ms/step - loss: 1.0610 - accuracy: 0.6601
Epoch 19/100
48/48 [==============================] - 0s 10ms/step - loss: 1.0099 - accuracy: 0.6872
Epoch 20/100
48/48 [==============================] - 1s 11ms/step - loss: 0.9351 - accuracy: 0.7043
Epoch 21/100
48/48 [==============================] - 1s 11ms/step - loss: 0.8987 - accuracy: 0.7154
Epoch 22/100
48/48 [==============================] - 1s 10ms/step - loss: 0.8353 - accuracy: 0.7372
Epoch 23/100
48/48 [==============================] - 1s 10ms/step - loss: 0.7950 - accuracy: 0.7496
Epoch 24/100
48/48 [==============================] - 0s 10ms/step - loss: 0.7612 - accuracy: 0.7608
Epoch 25/100
48/48 [==============================] - 1s 11ms/step - loss: 0.6916 - accuracy: 0.7815
Epoch 26/100
48/48 [==============================] - 0s 10ms/step - loss: 0.6460 - accuracy: 0.7996
Epoch 27/100
48/48 [==============================] - 1s 10ms/step - loss: 0.6441 - accuracy: 0.7970
Epoch 28/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5939 - accuracy: 0.8134
Epoch 29/100
48/48 [==============================] - 1s 11ms/step - loss: 0.5501 - accuracy: 0.8270
Epoch 30/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5281 - accuracy: 0.8350
Epoch 31/100
48/48 [==============================] - 1s 10ms/step - loss: 0.5143 - accuracy: 0.8397
Epoch 32/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4856 - accuracy: 0.8457
Epoch 33/100
48/48 [==============================] - 1s 11ms/step - loss: 0.4687 - accuracy: 0.8548
Epoch 34/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4266 - accuracy: 0.8671
Epoch 35/100
48/48 [==============================] - 1s 10ms/step - loss: 0.4205 - accuracy: 0.8704
Epoch 36/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4189 - accuracy: 0.8648
Epoch 37/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3774 - accuracy: 0.8777
Epoch 38/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3497 - accuracy: 0.8905
Epoch 39/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3698 - accuracy: 0.8845
Epoch 40/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3486 - accuracy: 0.8918
Epoch 41/100
48/48 [==============================] - 1s 10ms/step - loss: 0.3359 - accuracy: 0.8938
Epoch 42/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2871 - accuracy: 0.9096
Epoch 43/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3188 - accuracy: 0.9006
Epoch 44/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2952 - accuracy: 0.9101
Epoch 45/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2685 - accuracy: 0.9159
Epoch 46/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2602 - accuracy: 0.9212
Epoch 47/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2589 - accuracy: 0.9227
Epoch 48/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2411 - accuracy: 0.9234
Epoch 49/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2449 - accuracy: 0.9267
Epoch 50/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2491 - accuracy: 0.9239
Epoch 51/100
48/48 [==============================] - 1s 10ms/step - loss: 0.2357 - accuracy: 0.9297
Epoch 52/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2106 - accuracy: 0.9340
Epoch 53/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2267 - accuracy: 0.9292
Epoch 54/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1920 - accuracy: 0.9420
Epoch 55/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1976 - accuracy: 0.9385
Epoch 56/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2254 - accuracy: 0.9360
Epoch 57/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1850 - accuracy: 0.9437
Epoch 58/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2118 - accuracy: 0.9329
Epoch 59/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1795 - accuracy: 0.9425
Epoch 60/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1940 - accuracy: 0.9450
Epoch 61/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1812 - accuracy: 0.9470
Epoch 62/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1976 - accuracy: 0.9382
Epoch 63/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1642 - accuracy: 0.9490
Epoch 64/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1631 - accuracy: 0.9475
Epoch 65/100
48/48 [==============================] - 1s 10ms/step - loss: 0.1662 - accuracy: 0.9498
Epoch 66/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1770 - accuracy: 0.9522
Epoch 67/100
48/48 [==============================] - 1s 10ms/step - loss: 0.2138 - accuracy: 0.9423
Epoch 68/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1470 - accuracy: 0.9578
Epoch 69/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1494 - accuracy: 0.9538
Epoch 70/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1688 - accuracy: 0.9507
Epoch 71/100
48/48 [==============================] - 1s 10ms/step - loss: 0.1292 - accuracy: 0.9600
Epoch 72/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1426 - accuracy: 0.9588
Epoch 73/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1439 - accuracy: 0.9546
Epoch 74/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1455 - accuracy: 0.9560
Epoch 75/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1336 - accuracy: 0.9575
Epoch 76/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1278 - accuracy: 0.9633
Epoch 77/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1418 - accuracy: 0.9581
Epoch 78/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1365 - accuracy: 0.9590
Epoch 79/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1435 - accuracy: 0.9585
Epoch 80/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1301 - accuracy: 0.9620
Epoch 81/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1325 - accuracy: 0.9603
Epoch 82/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1434 - accuracy: 0.9588
Epoch 83/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1264 - accuracy: 0.9591
Epoch 84/100
48/48 [==============================] - 1s 10ms/step - loss: 0.1305 - accuracy: 0.9606
Epoch 85/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1443 - accuracy: 0.9605
Epoch 86/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1281 - accuracy: 0.9636
Epoch 87/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1336 - accuracy: 0.9610
Epoch 88/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1050 - accuracy: 0.9689
Epoch 89/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1342 - accuracy: 0.9616
Epoch 90/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1292 - accuracy: 0.9611
Epoch 91/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1143 - accuracy: 0.9651
Epoch 92/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1404 - accuracy: 0.9628
Epoch 93/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1101 - accuracy: 0.9676
Epoch 94/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1146 - accuracy: 0.9683
Epoch 95/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1256 - accuracy: 0.9648
Epoch 96/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1155 - accuracy: 0.9651
Epoch 97/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1035 - accuracy: 0.9708
Epoch 98/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1255 - accuracy: 0.9634
Epoch 99/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1176 - accuracy: 0.9681
Epoch 100/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1179 - accuracy: 0.9673
24/24 [==============================] - 0s 4ms/step - loss: 0.6524 - accuracy: 0.8774
Epoch 1/100
48/48 [==============================] - 1s 10ms/step - loss: 2.6441 - accuracy: 0.0960
Epoch 2/100
48/48 [==============================] - 0s 10ms/step - loss: 2.5524 - accuracy: 0.1321
Epoch 3/100
48/48 [==============================] - 0s 10ms/step - loss: 2.4705 - accuracy: 0.1700
Epoch 4/100
48/48 [==============================] - 0s 10ms/step - loss: 2.3907 - accuracy: 0.1957
Epoch 5/100
48/48 [==============================] - 0s 10ms/step - loss: 2.2874 - accuracy: 0.2358
Epoch 6/100
48/48 [==============================] - 0s 10ms/step - loss: 2.1714 - accuracy: 0.2854
Epoch 7/100
48/48 [==============================] - 0s 10ms/step - loss: 2.0675 - accuracy: 0.3198
Epoch 8/100
48/48 [==============================] - 1s 10ms/step - loss: 1.9155 - accuracy: 0.3720
Epoch 9/100
48/48 [==============================] - 0s 10ms/step - loss: 1.8316 - accuracy: 0.4041
Epoch 10/100
48/48 [==============================] - 0s 10ms/step - loss: 1.7075 - accuracy: 0.4433
Epoch 11/100
48/48 [==============================] - 0s 10ms/step - loss: 1.6242 - accuracy: 0.4777
Epoch 12/100
48/48 [==============================] - 0s 10ms/step - loss: 1.5540 - accuracy: 0.4983
Epoch 13/100
48/48 [==============================] - 0s 10ms/step - loss: 1.4440 - accuracy: 0.5395
Epoch 14/100
48/48 [==============================] - 0s 10ms/step - loss: 1.3343 - accuracy: 0.5715
Epoch 15/100
48/48 [==============================] - 0s 9ms/step - loss: 1.2655 - accuracy: 0.6033
Epoch 16/100
48/48 [==============================] - 0s 10ms/step - loss: 1.2145 - accuracy: 0.6159
Epoch 17/100
48/48 [==============================] - 0s 10ms/step - loss: 1.1281 - accuracy: 0.6388
Epoch 18/100
48/48 [==============================] - 0s 10ms/step - loss: 1.0641 - accuracy: 0.6646
Epoch 19/100
48/48 [==============================] - 0s 10ms/step - loss: 0.9947 - accuracy: 0.6906
Epoch 20/100
48/48 [==============================] - 0s 10ms/step - loss: 0.9399 - accuracy: 0.7029
Epoch 21/100
48/48 [==============================] - 0s 10ms/step - loss: 0.8941 - accuracy: 0.7109
Epoch 22/100
48/48 [==============================] - 0s 10ms/step - loss: 0.8506 - accuracy: 0.7302
Epoch 23/100
48/48 [==============================] - 0s 10ms/step - loss: 0.8001 - accuracy: 0.7480
Epoch 24/100
48/48 [==============================] - 0s 9ms/step - loss: 0.7400 - accuracy: 0.7614
Epoch 25/100
48/48 [==============================] - 0s 10ms/step - loss: 0.7068 - accuracy: 0.7762
Epoch 26/100
48/48 [==============================] - 0s 10ms/step - loss: 0.7034 - accuracy: 0.7824
Epoch 27/100
48/48 [==============================] - 0s 10ms/step - loss: 0.6059 - accuracy: 0.8045
Epoch 28/100
48/48 [==============================] - 0s 10ms/step - loss: 0.6298 - accuracy: 0.8074
Epoch 29/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5604 - accuracy: 0.8222
Epoch 30/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5324 - accuracy: 0.8304
Epoch 31/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5046 - accuracy: 0.8437
Epoch 32/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5051 - accuracy: 0.8423
Epoch 33/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4622 - accuracy: 0.8521
Epoch 34/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4408 - accuracy: 0.8591
Epoch 35/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4187 - accuracy: 0.8686
Epoch 36/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3945 - accuracy: 0.8754
Epoch 37/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3651 - accuracy: 0.8830
Epoch 38/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3909 - accuracy: 0.8802
Epoch 39/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3411 - accuracy: 0.8925
Epoch 40/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3406 - accuracy: 0.8932
Epoch 41/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3314 - accuracy: 0.8947
Epoch 42/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3297 - accuracy: 0.8927
Epoch 43/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2828 - accuracy: 0.9111
Epoch 44/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3020 - accuracy: 0.9046
Epoch 45/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2855 - accuracy: 0.9121
Epoch 46/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2746 - accuracy: 0.9126
Epoch 47/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2745 - accuracy: 0.9168
Epoch 48/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2476 - accuracy: 0.9229
Epoch 49/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2345 - accuracy: 0.9289
Epoch 50/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2556 - accuracy: 0.9241
Epoch 51/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2077 - accuracy: 0.9319
Epoch 52/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2398 - accuracy: 0.9259
Epoch 53/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2146 - accuracy: 0.9299
Epoch 54/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2048 - accuracy: 0.9345
Epoch 55/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2217 - accuracy: 0.9317
Epoch 56/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1973 - accuracy: 0.9390
Epoch 57/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1867 - accuracy: 0.9372
Epoch 58/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2038 - accuracy: 0.9355
Epoch 59/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1877 - accuracy: 0.9400
Epoch 60/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1959 - accuracy: 0.9365
Epoch 61/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1737 - accuracy: 0.9493
Epoch 62/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1870 - accuracy: 0.9420
Epoch 63/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1706 - accuracy: 0.9475
Epoch 64/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1706 - accuracy: 0.9473
Epoch 65/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1750 - accuracy: 0.9460
Epoch 66/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1618 - accuracy: 0.9487
Epoch 67/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1510 - accuracy: 0.9533
Epoch 68/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1620 - accuracy: 0.9495
Epoch 69/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1545 - accuracy: 0.9548
Epoch 70/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1702 - accuracy: 0.9528
Epoch 71/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1672 - accuracy: 0.9515
Epoch 72/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1573 - accuracy: 0.9523
Epoch 73/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1492 - accuracy: 0.9573
Epoch 74/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1604 - accuracy: 0.9545
Epoch 75/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1380 - accuracy: 0.9588
Epoch 76/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1331 - accuracy: 0.9616
Epoch 77/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1309 - accuracy: 0.9616
Epoch 78/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1505 - accuracy: 0.9565
Epoch 79/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1288 - accuracy: 0.9603
Epoch 80/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1398 - accuracy: 0.9590
Epoch 81/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1561 - accuracy: 0.9543
Epoch 82/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1417 - accuracy: 0.9625
Epoch 83/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1260 - accuracy: 0.9631
Epoch 84/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1439 - accuracy: 0.9611
Epoch 85/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1635 - accuracy: 0.9538
Epoch 86/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1177 - accuracy: 0.9654
Epoch 87/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1274 - accuracy: 0.9626
Epoch 88/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1337 - accuracy: 0.9644
Epoch 89/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1392 - accuracy: 0.9590
Epoch 90/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1293 - accuracy: 0.9654
Epoch 91/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1203 - accuracy: 0.9661
Epoch 92/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1297 - accuracy: 0.9616
Epoch 93/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1267 - accuracy: 0.9603
Epoch 94/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1143 - accuracy: 0.9641
Epoch 95/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1116 - accuracy: 0.9694
Epoch 96/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1411 - accuracy: 0.9613
Epoch 97/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1242 - accuracy: 0.9630
Epoch 98/100
48/48 [==============================] - 0s 10ms/step - loss: 0.0994 - accuracy: 0.9704
Epoch 99/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1184 - accuracy: 0.9668
Epoch 100/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1163 - accuracy: 0.9683
24/24 [==============================] - 0s 4ms/step - loss: 0.5292 - accuracy: 0.8840
Epoch 1/100
48/48 [==============================] - 2s 11ms/step - loss: 2.6368 - accuracy: 0.0955
Epoch 2/100
48/48 [==============================] - 1s 12ms/step - loss: 2.5846 - accuracy: 0.1191
Epoch 3/100
48/48 [==============================] - 1s 12ms/step - loss: 2.4794 - accuracy: 0.1481
Epoch 4/100
48/48 [==============================] - 1s 12ms/step - loss: 2.3556 - accuracy: 0.2082
Epoch 5/100
48/48 [==============================] - 1s 12ms/step - loss: 2.2187 - accuracy: 0.2665
Epoch 6/100
48/48 [==============================] - 1s 11ms/step - loss: 2.0455 - accuracy: 0.3318
Epoch 7/100
48/48 [==============================] - 1s 12ms/step - loss: 1.9418 - accuracy: 0.3787
Epoch 8/100
48/48 [==============================] - 1s 11ms/step - loss: 1.7993 - accuracy: 0.4129
Epoch 9/100
48/48 [==============================] - 1s 12ms/step - loss: 1.6842 - accuracy: 0.4553
Epoch 10/100
48/48 [==============================] - 1s 12ms/step - loss: 1.5651 - accuracy: 0.4963
Epoch 11/100
48/48 [==============================] - 1s 12ms/step - loss: 1.4087 - accuracy: 0.5503
Epoch 12/100
48/48 [==============================] - 1s 11ms/step - loss: 1.3067 - accuracy: 0.5842
Epoch 13/100
48/48 [==============================] - 1s 12ms/step - loss: 1.4528 - accuracy: 0.5613
Epoch 14/100
48/48 [==============================] - 1s 12ms/step - loss: 1.1846 - accuracy: 0.6223
Epoch 15/100
48/48 [==============================] - 1s 12ms/step - loss: 1.1899 - accuracy: 0.6356
Epoch 16/100
48/48 [==============================] - 1s 12ms/step - loss: 0.9971 - accuracy: 0.6805
Epoch 17/100
48/48 [==============================] - 1s 12ms/step - loss: 1.0569 - accuracy: 0.6763
Epoch 18/100
48/48 [==============================] - 1s 12ms/step - loss: 0.8889 - accuracy: 0.7183
Epoch 19/100
48/48 [==============================] - 1s 11ms/step - loss: 1.3089 - accuracy: 0.6246
Epoch 20/100
48/48 [==============================] - 1s 12ms/step - loss: 0.8470 - accuracy: 0.7326
Epoch 21/100
48/48 [==============================] - 1s 11ms/step - loss: 0.7498 - accuracy: 0.7627
Epoch 22/100
48/48 [==============================] - 1s 12ms/step - loss: 0.7790 - accuracy: 0.7627
Epoch 23/100
48/48 [==============================] - 1s 11ms/step - loss: 0.6361 - accuracy: 0.7948
Epoch 24/100
48/48 [==============================] - 1s 12ms/step - loss: 0.5699 - accuracy: 0.8172
Epoch 25/100
48/48 [==============================] - 1s 12ms/step - loss: 0.5763 - accuracy: 0.8164
Epoch 26/100
48/48 [==============================] - 1s 11ms/step - loss: 0.6750 - accuracy: 0.7883
Epoch 27/100
48/48 [==============================] - 1s 12ms/step - loss: 0.5770 - accuracy: 0.8222
Epoch 28/100
48/48 [==============================] - 1s 12ms/step - loss: 0.4459 - accuracy: 0.8591
Epoch 29/100
48/48 [==============================] - 1s 12ms/step - loss: 0.4191 - accuracy: 0.8661
Epoch 30/100
48/48 [==============================] - 1s 11ms/step - loss: 1.1448 - accuracy: 0.6941
Epoch 31/100
48/48 [==============================] - 1s 12ms/step - loss: 0.4719 - accuracy: 0.8531
Epoch 32/100
48/48 [==============================] - 1s 11ms/step - loss: 0.5696 - accuracy: 0.8272
Epoch 33/100
48/48 [==============================] - 1s 12ms/step - loss: 0.4086 - accuracy: 0.8712
Epoch 34/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3711 - accuracy: 0.8794
Epoch 35/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3323 - accuracy: 0.8895
Epoch 36/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3830 - accuracy: 0.8785
Epoch 37/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2958 - accuracy: 0.9081
Epoch 38/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2844 - accuracy: 0.9063
Epoch 39/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3221 - accuracy: 0.9010
Epoch 40/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2523 - accuracy: 0.9199
Epoch 41/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3511 - accuracy: 0.8912
Epoch 42/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2599 - accuracy: 0.9176
Epoch 43/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2453 - accuracy: 0.9191
Epoch 44/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2613 - accuracy: 0.9141
Epoch 45/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2225 - accuracy: 0.9290
Epoch 46/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2153 - accuracy: 0.9297
Epoch 47/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1872 - accuracy: 0.9377
Epoch 48/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1955 - accuracy: 0.9398
Epoch 49/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1927 - accuracy: 0.9400
Epoch 50/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1896 - accuracy: 0.9422
Epoch 51/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1780 - accuracy: 0.9455
Epoch 52/100
48/48 [==============================] - 1s 13ms/step - loss: 0.1560 - accuracy: 0.9508
Epoch 53/100
48/48 [==============================] - 1s 11ms/step - loss: 0.5904 - accuracy: 0.8518
Epoch 54/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2873 - accuracy: 0.9103
Epoch 55/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2166 - accuracy: 0.9347
Epoch 56/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1967 - accuracy: 0.9384
Epoch 57/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3624 - accuracy: 0.9031
Epoch 58/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2068 - accuracy: 0.9329
Epoch 59/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3005 - accuracy: 0.9158
Epoch 60/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2004 - accuracy: 0.9402
Epoch 61/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1922 - accuracy: 0.9395
Epoch 62/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1440 - accuracy: 0.9555
Epoch 63/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1405 - accuracy: 0.9541
Epoch 64/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1224 - accuracy: 0.9614
Epoch 65/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1628 - accuracy: 0.9503
Epoch 66/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1432 - accuracy: 0.9540
Epoch 67/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1132 - accuracy: 0.9653
Epoch 68/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1194 - accuracy: 0.9623
Epoch 69/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1057 - accuracy: 0.9659
Epoch 70/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1172 - accuracy: 0.9621
Epoch 71/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1085 - accuracy: 0.9656
Epoch 72/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1073 - accuracy: 0.9639
Epoch 73/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1049 - accuracy: 0.9668
Epoch 74/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0954 - accuracy: 0.9676
Epoch 75/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1008 - accuracy: 0.9681
Epoch 76/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1033 - accuracy: 0.9681
Epoch 77/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0936 - accuracy: 0.9714
Epoch 78/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0895 - accuracy: 0.9719
Epoch 79/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0783 - accuracy: 0.9746
Epoch 80/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1554 - accuracy: 0.9560
Epoch 81/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1044 - accuracy: 0.9669
Epoch 82/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0987 - accuracy: 0.9693
Epoch 83/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0955 - accuracy: 0.9736
Epoch 84/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0934 - accuracy: 0.9706
Epoch 85/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0916 - accuracy: 0.9734
Epoch 86/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1059 - accuracy: 0.9674
Epoch 87/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0952 - accuracy: 0.9703
Epoch 88/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1574 - accuracy: 0.9556
Epoch 89/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2984 - accuracy: 0.9246
Epoch 90/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1052 - accuracy: 0.9668
Epoch 91/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0893 - accuracy: 0.9734
Epoch 92/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0966 - accuracy: 0.9708
Epoch 93/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0858 - accuracy: 0.9732
Epoch 94/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0735 - accuracy: 0.9749
Epoch 95/100
48/48 [==============================] - 1s 12ms/step - loss: 0.0652 - accuracy: 0.9771
Epoch 96/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0832 - accuracy: 0.9714
Epoch 97/100
48/48 [==============================] - 1s 12ms/step - loss: 0.4259 - accuracy: 0.8910
Epoch 98/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1523 - accuracy: 0.9535
Epoch 99/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1183 - accuracy: 0.9619
Epoch 100/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1288 - accuracy: 0.9613
24/24 [==============================] - 0s 4ms/step - loss: 0.3640 - accuracy: 0.9010
Epoch 1/100
48/48 [==============================] - 2s 11ms/step - loss: 2.6510 - accuracy: 0.0950
Epoch 2/100
48/48 [==============================] - 1s 11ms/step - loss: 2.6073 - accuracy: 0.1125
Epoch 3/100
48/48 [==============================] - 1s 11ms/step - loss: 2.5749 - accuracy: 0.1249
Epoch 4/100
48/48 [==============================] - 1s 12ms/step - loss: 2.5274 - accuracy: 0.1618
Epoch 5/100
48/48 [==============================] - 1s 11ms/step - loss: 2.5588 - accuracy: 0.1763
Epoch 6/100
48/48 [==============================] - 1s 11ms/step - loss: 2.4583 - accuracy: 0.2110
Epoch 7/100
48/48 [==============================] - 1s 11ms/step - loss: 2.3092 - accuracy: 0.2527
Epoch 8/100
48/48 [==============================] - 1s 12ms/step - loss: 2.1870 - accuracy: 0.2846
Epoch 9/100
48/48 [==============================] - 1s 11ms/step - loss: 2.0346 - accuracy: 0.3416
Epoch 10/100
48/48 [==============================] - 1s 12ms/step - loss: 1.9332 - accuracy: 0.3702
Epoch 11/100
48/48 [==============================] - 1s 13ms/step - loss: 1.8705 - accuracy: 0.3911
Epoch 12/100
48/48 [==============================] - 1s 12ms/step - loss: 1.7207 - accuracy: 0.4360
Epoch 13/100
48/48 [==============================] - 1s 12ms/step - loss: 1.6628 - accuracy: 0.4637
Epoch 14/100
48/48 [==============================] - 1s 12ms/step - loss: 1.5817 - accuracy: 0.4959
Epoch 15/100
48/48 [==============================] - 1s 12ms/step - loss: 1.4526 - accuracy: 0.5366
Epoch 16/100
48/48 [==============================] - 1s 11ms/step - loss: 1.4074 - accuracy: 0.5577
Epoch 17/100
48/48 [==============================] - 1s 12ms/step - loss: 1.3087 - accuracy: 0.5843
Epoch 18/100
48/48 [==============================] - 1s 12ms/step - loss: 1.2579 - accuracy: 0.6129
Epoch 19/100
48/48 [==============================] - 1s 12ms/step - loss: 1.2402 - accuracy: 0.6152
Epoch 20/100
48/48 [==============================] - 1s 12ms/step - loss: 1.1307 - accuracy: 0.6468
Epoch 21/100
48/48 [==============================] - 1s 12ms/step - loss: 1.0960 - accuracy: 0.6596
Epoch 22/100
48/48 [==============================] - 1s 12ms/step - loss: 1.0743 - accuracy: 0.6697
Epoch 23/100
48/48 [==============================] - 1s 12ms/step - loss: 1.0586 - accuracy: 0.6654
Epoch 24/100
48/48 [==============================] - 1s 11ms/step - loss: 0.9299 - accuracy: 0.7101
Epoch 25/100
48/48 [==============================] - 1s 12ms/step - loss: 0.8155 - accuracy: 0.7408
Epoch 26/100
48/48 [==============================] - 1s 12ms/step - loss: 0.7727 - accuracy: 0.7534
Epoch 27/100
48/48 [==============================] - 1s 11ms/step - loss: 0.7562 - accuracy: 0.7543
Epoch 28/100
48/48 [==============================] - 1s 12ms/step - loss: 0.8122 - accuracy: 0.7510
Epoch 29/100
48/48 [==============================] - 1s 11ms/step - loss: 1.1008 - accuracy: 0.6853
Epoch 30/100
48/48 [==============================] - 1s 12ms/step - loss: 0.7152 - accuracy: 0.7689
Epoch 31/100
48/48 [==============================] - 1s 11ms/step - loss: 0.7977 - accuracy: 0.7546
Epoch 32/100
48/48 [==============================] - 1s 12ms/step - loss: 0.6451 - accuracy: 0.7965
Epoch 33/100
48/48 [==============================] - 1s 11ms/step - loss: 0.5818 - accuracy: 0.8194
Epoch 34/100
48/48 [==============================] - 1s 11ms/step - loss: 0.5548 - accuracy: 0.8212
Epoch 35/100
48/48 [==============================] - 1s 12ms/step - loss: 0.5351 - accuracy: 0.8310
Epoch 36/100
48/48 [==============================] - 1s 11ms/step - loss: 0.5200 - accuracy: 0.8355
Epoch 37/100
48/48 [==============================] - 1s 11ms/step - loss: 0.5123 - accuracy: 0.8344
Epoch 38/100
48/48 [==============================] - 1s 11ms/step - loss: 0.6537 - accuracy: 0.7991
Epoch 39/100
48/48 [==============================] - 1s 12ms/step - loss: 0.5233 - accuracy: 0.8355
Epoch 40/100
48/48 [==============================] - 1s 11ms/step - loss: 0.5969 - accuracy: 0.8191
Epoch 41/100
48/48 [==============================] - 1s 11ms/step - loss: 0.5247 - accuracy: 0.8398
Epoch 42/100
48/48 [==============================] - 1s 11ms/step - loss: 0.4014 - accuracy: 0.8737
Epoch 43/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3728 - accuracy: 0.8834
Epoch 44/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3842 - accuracy: 0.8759
Epoch 45/100
48/48 [==============================] - 1s 11ms/step - loss: 0.5528 - accuracy: 0.8368
Epoch 46/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3778 - accuracy: 0.8797
Epoch 47/100
48/48 [==============================] - 1s 11ms/step - loss: 0.4187 - accuracy: 0.8712
Epoch 48/100
48/48 [==============================] - 1s 12ms/step - loss: 0.4126 - accuracy: 0.8681
Epoch 49/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3267 - accuracy: 0.8937
Epoch 50/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3157 - accuracy: 0.8980
Epoch 51/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3318 - accuracy: 0.8918
Epoch 52/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2860 - accuracy: 0.9078
Epoch 53/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2639 - accuracy: 0.9114
Epoch 54/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2769 - accuracy: 0.9091
Epoch 55/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2783 - accuracy: 0.9080
Epoch 56/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2474 - accuracy: 0.9188
Epoch 57/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2383 - accuracy: 0.9264
Epoch 58/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2550 - accuracy: 0.9219
Epoch 59/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2426 - accuracy: 0.9204
Epoch 60/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3582 - accuracy: 0.8978
Epoch 61/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2707 - accuracy: 0.9123
Epoch 62/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2139 - accuracy: 0.9281
Epoch 63/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2040 - accuracy: 0.9330
Epoch 64/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2189 - accuracy: 0.9332
Epoch 65/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2114 - accuracy: 0.9329
Epoch 66/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1912 - accuracy: 0.9374
Epoch 67/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1826 - accuracy: 0.9389
Epoch 68/100
48/48 [==============================] - 1s 12ms/step - loss: 0.7228 - accuracy: 0.8314
Epoch 69/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2674 - accuracy: 0.9158
Epoch 70/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2579 - accuracy: 0.9169
Epoch 71/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2422 - accuracy: 0.9206
Epoch 72/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1956 - accuracy: 0.9339
Epoch 73/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1719 - accuracy: 0.9407
Epoch 74/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1781 - accuracy: 0.9452
Epoch 75/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1929 - accuracy: 0.9370
Epoch 76/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1787 - accuracy: 0.9399
Epoch 77/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1746 - accuracy: 0.9463
Epoch 78/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1527 - accuracy: 0.9530
Epoch 79/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1654 - accuracy: 0.9468
Epoch 80/100
48/48 [==============================] - 1s 11ms/step - loss: 0.5077 - accuracy: 0.8756
Epoch 81/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1990 - accuracy: 0.9394
Epoch 82/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1987 - accuracy: 0.9369
Epoch 83/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1726 - accuracy: 0.9445
Epoch 84/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1698 - accuracy: 0.9472
Epoch 85/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1420 - accuracy: 0.9551
Epoch 86/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1441 - accuracy: 0.9528
Epoch 87/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1410 - accuracy: 0.9578
Epoch 88/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1607 - accuracy: 0.9467
Epoch 89/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1700 - accuracy: 0.9473
Epoch 90/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1244 - accuracy: 0.9573
Epoch 91/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1285 - accuracy: 0.9580
Epoch 92/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1221 - accuracy: 0.9630
Epoch 93/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1366 - accuracy: 0.9566
Epoch 94/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1274 - accuracy: 0.9593
Epoch 95/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1284 - accuracy: 0.9591
Epoch 96/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3518 - accuracy: 0.9168
Epoch 97/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1396 - accuracy: 0.9548
Epoch 98/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1812 - accuracy: 0.9422
Epoch 99/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1260 - accuracy: 0.9606
Epoch 100/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1114 - accuracy: 0.9631
24/24 [==============================] - 0s 4ms/step - loss: 0.3379 - accuracy: 0.9116
Epoch 1/100
48/48 [==============================] - 2s 11ms/step - loss: 2.6434 - accuracy: 0.0985
Epoch 2/100
48/48 [==============================] - 1s 11ms/step - loss: 2.6111 - accuracy: 0.0967
Epoch 3/100
48/48 [==============================] - 1s 12ms/step - loss: 2.6061 - accuracy: 0.1244
Epoch 4/100
48/48 [==============================] - 1s 11ms/step - loss: 2.5120 - accuracy: 0.1627
Epoch 5/100
48/48 [==============================] - 1s 12ms/step - loss: 2.3985 - accuracy: 0.1999
Epoch 6/100
48/48 [==============================] - 1s 12ms/step - loss: 2.4308 - accuracy: 0.2097
Epoch 7/100
48/48 [==============================] - 1s 11ms/step - loss: 2.1694 - accuracy: 0.2833
Epoch 8/100
48/48 [==============================] - 1s 12ms/step - loss: 2.0462 - accuracy: 0.3276
Epoch 9/100
48/48 [==============================] - 1s 11ms/step - loss: 2.0023 - accuracy: 0.3353
Epoch 10/100
48/48 [==============================] - 1s 11ms/step - loss: 2.0480 - accuracy: 0.3496
Epoch 11/100
48/48 [==============================] - 1s 11ms/step - loss: 1.7516 - accuracy: 0.4365
Epoch 12/100
48/48 [==============================] - 1s 12ms/step - loss: 1.6805 - accuracy: 0.4576
Epoch 13/100
48/48 [==============================] - 1s 12ms/step - loss: 1.6924 - accuracy: 0.4745
Epoch 14/100
48/48 [==============================] - 1s 11ms/step - loss: 1.4299 - accuracy: 0.5483
Epoch 15/100
48/48 [==============================] - 1s 11ms/step - loss: 1.3467 - accuracy: 0.5724
Epoch 16/100
48/48 [==============================] - 1s 12ms/step - loss: 1.2430 - accuracy: 0.6054
Epoch 17/100
48/48 [==============================] - 1s 12ms/step - loss: 1.2364 - accuracy: 0.6041
Epoch 18/100
48/48 [==============================] - 1s 12ms/step - loss: 1.2424 - accuracy: 0.6152
Epoch 19/100
48/48 [==============================] - 1s 11ms/step - loss: 1.6289 - accuracy: 0.5290
Epoch 20/100
48/48 [==============================] - 1s 12ms/step - loss: 1.0523 - accuracy: 0.6642
Epoch 21/100
48/48 [==============================] - 1s 10ms/step - loss: 0.9600 - accuracy: 0.6946
Epoch 22/100
48/48 [==============================] - 1s 12ms/step - loss: 0.9631 - accuracy: 0.6975
Epoch 23/100
48/48 [==============================] - 1s 11ms/step - loss: 1.0588 - accuracy: 0.6877
Epoch 24/100
48/48 [==============================] - 1s 11ms/step - loss: 0.8042 - accuracy: 0.7443
Epoch 25/100
48/48 [==============================] - 1s 11ms/step - loss: 0.7538 - accuracy: 0.7621
Epoch 26/100
48/48 [==============================] - 1s 11ms/step - loss: 0.7997 - accuracy: 0.7576
Epoch 27/100
48/48 [==============================] - 1s 12ms/step - loss: 0.6593 - accuracy: 0.7853
Epoch 28/100
48/48 [==============================] - 1s 11ms/step - loss: 0.6264 - accuracy: 0.7995
Epoch 29/100
48/48 [==============================] - 1s 11ms/step - loss: 0.5899 - accuracy: 0.8088
Epoch 30/100
48/48 [==============================] - 1s 11ms/step - loss: 0.7404 - accuracy: 0.7696
Epoch 31/100
48/48 [==============================] - 1s 12ms/step - loss: 0.5684 - accuracy: 0.8231
Epoch 32/100
48/48 [==============================] - 1s 12ms/step - loss: 0.5177 - accuracy: 0.8383
Epoch 33/100
48/48 [==============================] - 1s 11ms/step - loss: 0.4865 - accuracy: 0.8435
Epoch 34/100
48/48 [==============================] - 1s 12ms/step - loss: 0.4457 - accuracy: 0.8563
Epoch 35/100
48/48 [==============================] - 1s 12ms/step - loss: 0.4517 - accuracy: 0.8555
Epoch 36/100
48/48 [==============================] - 1s 12ms/step - loss: 0.4101 - accuracy: 0.8732
Epoch 37/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3965 - accuracy: 0.8726
Epoch 38/100
48/48 [==============================] - 1s 11ms/step - loss: 0.8868 - accuracy: 0.7883
Epoch 39/100
48/48 [==============================] - 1s 12ms/step - loss: 0.5798 - accuracy: 0.8319
Epoch 40/100
48/48 [==============================] - 1s 11ms/step - loss: 0.4689 - accuracy: 0.8540
Epoch 41/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3492 - accuracy: 0.8850
Epoch 42/100
48/48 [==============================] - 1s 12ms/step - loss: 0.4423 - accuracy: 0.8643
Epoch 43/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3633 - accuracy: 0.8822
Epoch 44/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3185 - accuracy: 0.8993
Epoch 45/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2902 - accuracy: 0.9060
Epoch 46/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2786 - accuracy: 0.9070
Epoch 47/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2957 - accuracy: 0.9073
Epoch 48/100
48/48 [==============================] - 1s 11ms/step - loss: 0.4244 - accuracy: 0.8847
Epoch 49/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2626 - accuracy: 0.9141
Epoch 50/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3792 - accuracy: 0.8792
Epoch 51/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3177 - accuracy: 0.8982
Epoch 52/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2452 - accuracy: 0.9217
Epoch 53/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2295 - accuracy: 0.9212
Epoch 54/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2173 - accuracy: 0.9317
Epoch 55/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2173 - accuracy: 0.9299
Epoch 56/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1864 - accuracy: 0.9379
Epoch 57/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1962 - accuracy: 0.9350
Epoch 58/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1932 - accuracy: 0.9387
Epoch 59/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1790 - accuracy: 0.9407
Epoch 60/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1681 - accuracy: 0.9452
Epoch 61/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1703 - accuracy: 0.9455
Epoch 62/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1713 - accuracy: 0.9448
Epoch 63/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1574 - accuracy: 0.9487
Epoch 64/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1691 - accuracy: 0.9447
Epoch 65/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1783 - accuracy: 0.9462
Epoch 66/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1720 - accuracy: 0.9463
Epoch 67/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1576 - accuracy: 0.9492
Epoch 68/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2334 - accuracy: 0.9317
Epoch 69/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1551 - accuracy: 0.9483
Epoch 70/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1605 - accuracy: 0.9498
Epoch 71/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1440 - accuracy: 0.9536
Epoch 72/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1389 - accuracy: 0.9541
Epoch 73/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1357 - accuracy: 0.9555
Epoch 74/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1417 - accuracy: 0.9538
Epoch 75/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1262 - accuracy: 0.9596
Epoch 76/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1651 - accuracy: 0.9488
Epoch 77/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1305 - accuracy: 0.9595
Epoch 78/100
48/48 [==============================] - 1s 11ms/step - loss: 1.2631 - accuracy: 0.7206
Epoch 79/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3147 - accuracy: 0.9045
Epoch 80/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2207 - accuracy: 0.9297
Epoch 81/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2394 - accuracy: 0.9262
Epoch 82/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1991 - accuracy: 0.9399
Epoch 83/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1580 - accuracy: 0.9500
Epoch 84/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1476 - accuracy: 0.9540
Epoch 85/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1306 - accuracy: 0.9590
Epoch 86/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1253 - accuracy: 0.9601
Epoch 87/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1525 - accuracy: 0.9545
Epoch 88/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1324 - accuracy: 0.9581
Epoch 89/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1167 - accuracy: 0.9613
Epoch 90/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1156 - accuracy: 0.9623
Epoch 91/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1187 - accuracy: 0.9603
Epoch 92/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2673 - accuracy: 0.9317
Epoch 93/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1137 - accuracy: 0.9633
Epoch 94/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1135 - accuracy: 0.9656
Epoch 95/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0970 - accuracy: 0.9718
Epoch 96/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1037 - accuracy: 0.9668
Epoch 97/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1035 - accuracy: 0.9698
Epoch 98/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1054 - accuracy: 0.9678
Epoch 99/100
48/48 [==============================] - 1s 11ms/step - loss: 0.0951 - accuracy: 0.9701
Epoch 100/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1013 - accuracy: 0.9703
24/24 [==============================] - 0s 4ms/step - loss: 0.5318 - accuracy: 0.8661
Epoch 1/100
48/48 [==============================] - 1s 9ms/step - loss: 2.6422 - accuracy: 0.0942
Epoch 2/100
48/48 [==============================] - 0s 9ms/step - loss: 2.5748 - accuracy: 0.1035
Epoch 3/100
48/48 [==============================] - 0s 9ms/step - loss: 2.4991 - accuracy: 0.1238
Epoch 4/100
48/48 [==============================] - 0s 9ms/step - loss: 2.4641 - accuracy: 0.1419
Epoch 5/100
48/48 [==============================] - 0s 9ms/step - loss: 2.4449 - accuracy: 0.1529
Epoch 6/100
48/48 [==============================] - 0s 9ms/step - loss: 2.3230 - accuracy: 0.1946
Epoch 7/100
48/48 [==============================] - 0s 9ms/step - loss: 2.2813 - accuracy: 0.2399
Epoch 8/100
48/48 [==============================] - 0s 9ms/step - loss: 2.0744 - accuracy: 0.3172
Epoch 9/100
48/48 [==============================] - 0s 9ms/step - loss: 1.9833 - accuracy: 0.3460
Epoch 10/100
48/48 [==============================] - 0s 9ms/step - loss: 1.8384 - accuracy: 0.3976
Epoch 11/100
48/48 [==============================] - 0s 9ms/step - loss: 1.8462 - accuracy: 0.3875
Epoch 12/100
48/48 [==============================] - 0s 9ms/step - loss: 1.6766 - accuracy: 0.4513
Epoch 13/100
48/48 [==============================] - 0s 9ms/step - loss: 1.6330 - accuracy: 0.4674
Epoch 14/100
48/48 [==============================] - 0s 9ms/step - loss: 1.5407 - accuracy: 0.4897
Epoch 15/100
48/48 [==============================] - 0s 9ms/step - loss: 1.4347 - accuracy: 0.5362
Epoch 16/100
48/48 [==============================] - 0s 9ms/step - loss: 1.3654 - accuracy: 0.5492
Epoch 17/100
48/48 [==============================] - 0s 9ms/step - loss: 1.3013 - accuracy: 0.5798
Epoch 18/100
48/48 [==============================] - 0s 9ms/step - loss: 1.2037 - accuracy: 0.6082
Epoch 19/100
48/48 [==============================] - 0s 9ms/step - loss: 1.4367 - accuracy: 0.5392
Epoch 20/100
48/48 [==============================] - 0s 9ms/step - loss: 1.2684 - accuracy: 0.5969
Epoch 21/100
48/48 [==============================] - 0s 9ms/step - loss: 1.0984 - accuracy: 0.6373
Epoch 22/100
48/48 [==============================] - 0s 9ms/step - loss: 1.0255 - accuracy: 0.6687
Epoch 23/100
48/48 [==============================] - 0s 9ms/step - loss: 0.9840 - accuracy: 0.6786
Epoch 24/100
48/48 [==============================] - 0s 9ms/step - loss: 0.9293 - accuracy: 0.6954
Epoch 25/100
48/48 [==============================] - 0s 9ms/step - loss: 0.9458 - accuracy: 0.6873
Epoch 26/100
48/48 [==============================] - 0s 9ms/step - loss: 0.8733 - accuracy: 0.7132
Epoch 27/100
48/48 [==============================] - 0s 9ms/step - loss: 0.8278 - accuracy: 0.7376
Epoch 28/100
48/48 [==============================] - 0s 9ms/step - loss: 0.8252 - accuracy: 0.7275
Epoch 29/100
48/48 [==============================] - 0s 9ms/step - loss: 1.0161 - accuracy: 0.6781
Epoch 30/100
48/48 [==============================] - 0s 9ms/step - loss: 0.7713 - accuracy: 0.7496
Epoch 31/100
48/48 [==============================] - 0s 9ms/step - loss: 0.7700 - accuracy: 0.7511
Epoch 32/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6966 - accuracy: 0.7695
Epoch 33/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6670 - accuracy: 0.7835
Epoch 34/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6636 - accuracy: 0.7878
Epoch 35/100
48/48 [==============================] - 0s 9ms/step - loss: 0.7561 - accuracy: 0.7557
Epoch 36/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6375 - accuracy: 0.7973
Epoch 37/100
48/48 [==============================] - 0s 9ms/step - loss: 0.7640 - accuracy: 0.7576
Epoch 38/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5841 - accuracy: 0.8084
Epoch 39/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5583 - accuracy: 0.8182
Epoch 40/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5217 - accuracy: 0.8270
Epoch 41/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6583 - accuracy: 0.7820
Epoch 42/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5191 - accuracy: 0.8275
Epoch 43/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4701 - accuracy: 0.8463
Epoch 44/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4724 - accuracy: 0.8488
Epoch 45/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5759 - accuracy: 0.8136
Epoch 46/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4667 - accuracy: 0.8506
Epoch 47/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4715 - accuracy: 0.8465
Epoch 48/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4787 - accuracy: 0.8465
Epoch 49/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4245 - accuracy: 0.8616
Epoch 50/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4079 - accuracy: 0.8682
Epoch 51/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3970 - accuracy: 0.8682
Epoch 52/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4669 - accuracy: 0.8491
Epoch 53/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3941 - accuracy: 0.8719
Epoch 54/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3663 - accuracy: 0.8835
Epoch 55/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3563 - accuracy: 0.8819
Epoch 56/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6808 - accuracy: 0.7855
Epoch 57/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4439 - accuracy: 0.8536
Epoch 58/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4508 - accuracy: 0.8513
Epoch 59/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3986 - accuracy: 0.8667
Epoch 60/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3867 - accuracy: 0.8724
Epoch 61/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4036 - accuracy: 0.8706
Epoch 62/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3569 - accuracy: 0.8860
Epoch 63/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3230 - accuracy: 0.8951
Epoch 64/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6479 - accuracy: 0.8057
Epoch 65/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3666 - accuracy: 0.8852
Epoch 66/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6244 - accuracy: 0.8112
Epoch 67/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3976 - accuracy: 0.8714
Epoch 68/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3432 - accuracy: 0.8858
Epoch 69/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3180 - accuracy: 0.8971
Epoch 70/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3533 - accuracy: 0.8845
Epoch 71/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5422 - accuracy: 0.8353
Epoch 72/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3585 - accuracy: 0.8870
Epoch 73/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3984 - accuracy: 0.8706
Epoch 74/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3046 - accuracy: 0.8971
Epoch 75/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3194 - accuracy: 0.8986
Epoch 76/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3456 - accuracy: 0.8840
Epoch 77/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2754 - accuracy: 0.9101
Epoch 78/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2545 - accuracy: 0.9181
Epoch 79/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2719 - accuracy: 0.9103
Epoch 80/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2577 - accuracy: 0.9163
Epoch 81/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2509 - accuracy: 0.9171
Epoch 82/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2690 - accuracy: 0.9111
Epoch 83/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2381 - accuracy: 0.9227
Epoch 84/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3131 - accuracy: 0.9061
Epoch 85/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2473 - accuracy: 0.9202
Epoch 86/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3509 - accuracy: 0.8875
Epoch 87/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2489 - accuracy: 0.9226
Epoch 88/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2287 - accuracy: 0.9266
Epoch 89/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2249 - accuracy: 0.9322
Epoch 90/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2525 - accuracy: 0.9164
Epoch 91/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2166 - accuracy: 0.9289
Epoch 92/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2583 - accuracy: 0.9124
Epoch 93/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2833 - accuracy: 0.9084
Epoch 94/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2756 - accuracy: 0.9091
Epoch 95/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2105 - accuracy: 0.9339
Epoch 96/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1968 - accuracy: 0.9370
Epoch 97/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2023 - accuracy: 0.9344
Epoch 98/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1880 - accuracy: 0.9393
Epoch 99/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2031 - accuracy: 0.9327
Epoch 100/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1937 - accuracy: 0.9354
24/24 [==============================] - 0s 4ms/step - loss: 0.3245 - accuracy: 0.9086
Epoch 1/100
48/48 [==============================] - 1s 9ms/step - loss: 2.6378 - accuracy: 0.0960
Epoch 2/100
48/48 [==============================] - 0s 9ms/step - loss: 2.5536 - accuracy: 0.1106
Epoch 3/100
48/48 [==============================] - 0s 9ms/step - loss: 2.5224 - accuracy: 0.1211
Epoch 4/100
48/48 [==============================] - 0s 10ms/step - loss: 2.4334 - accuracy: 0.1530
Epoch 5/100
48/48 [==============================] - 0s 9ms/step - loss: 2.3476 - accuracy: 0.1746
Epoch 6/100
48/48 [==============================] - 0s 9ms/step - loss: 2.4556 - accuracy: 0.1582
Epoch 7/100
48/48 [==============================] - 0s 9ms/step - loss: 2.2518 - accuracy: 0.2220
Epoch 8/100
48/48 [==============================] - 0s 9ms/step - loss: 2.1400 - accuracy: 0.2756
Epoch 9/100
48/48 [==============================] - 0s 9ms/step - loss: 2.0303 - accuracy: 0.3228
Epoch 10/100
48/48 [==============================] - 0s 9ms/step - loss: 1.9618 - accuracy: 0.3439
Epoch 11/100
48/48 [==============================] - 0s 9ms/step - loss: 1.8377 - accuracy: 0.3878
Epoch 12/100
48/48 [==============================] - 0s 9ms/step - loss: 1.7051 - accuracy: 0.4358
Epoch 13/100
48/48 [==============================] - 0s 9ms/step - loss: 1.5511 - accuracy: 0.4863
Epoch 14/100
48/48 [==============================] - 0s 9ms/step - loss: 1.5390 - accuracy: 0.4961
Epoch 15/100
48/48 [==============================] - 0s 9ms/step - loss: 1.4584 - accuracy: 0.5280
Epoch 16/100
48/48 [==============================] - 0s 9ms/step - loss: 1.3303 - accuracy: 0.5596
Epoch 17/100
48/48 [==============================] - 0s 9ms/step - loss: 1.2601 - accuracy: 0.5890
Epoch 18/100
48/48 [==============================] - 0s 9ms/step - loss: 1.1958 - accuracy: 0.6117
Epoch 19/100
48/48 [==============================] - 0s 9ms/step - loss: 1.1552 - accuracy: 0.6232
Epoch 20/100
48/48 [==============================] - 0s 9ms/step - loss: 1.1126 - accuracy: 0.6430
Epoch 21/100
48/48 [==============================] - 0s 10ms/step - loss: 1.0680 - accuracy: 0.6539
Epoch 22/100
48/48 [==============================] - 0s 9ms/step - loss: 0.9678 - accuracy: 0.6908
Epoch 23/100
48/48 [==============================] - 0s 9ms/step - loss: 0.9079 - accuracy: 0.7046
Epoch 24/100
48/48 [==============================] - 0s 9ms/step - loss: 1.0134 - accuracy: 0.6717
Epoch 25/100
48/48 [==============================] - 0s 9ms/step - loss: 0.9040 - accuracy: 0.7046
Epoch 26/100
48/48 [==============================] - 0s 9ms/step - loss: 0.8321 - accuracy: 0.7348
Epoch 27/100
48/48 [==============================] - 0s 9ms/step - loss: 0.7665 - accuracy: 0.7515
Epoch 28/100
48/48 [==============================] - 0s 9ms/step - loss: 0.7788 - accuracy: 0.7488
Epoch 29/100
48/48 [==============================] - 0s 9ms/step - loss: 0.7242 - accuracy: 0.7679
Epoch 30/100
48/48 [==============================] - 0s 9ms/step - loss: 0.7917 - accuracy: 0.7430
Epoch 31/100
48/48 [==============================] - 0s 9ms/step - loss: 0.7086 - accuracy: 0.7677
Epoch 32/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6674 - accuracy: 0.7855
Epoch 33/100
48/48 [==============================] - 0s 9ms/step - loss: 0.7909 - accuracy: 0.7475
Epoch 34/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6145 - accuracy: 0.7998
Epoch 35/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6024 - accuracy: 0.8041
Epoch 36/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6356 - accuracy: 0.7985
Epoch 37/100
48/48 [==============================] - 0s 9ms/step - loss: 0.7287 - accuracy: 0.7727
Epoch 38/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5656 - accuracy: 0.8161
Epoch 39/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5249 - accuracy: 0.8335
Epoch 40/100
48/48 [==============================] - 0s 8ms/step - loss: 0.5024 - accuracy: 0.8378
Epoch 41/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5482 - accuracy: 0.8237
Epoch 42/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6515 - accuracy: 0.7942
Epoch 43/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5165 - accuracy: 0.8365
Epoch 44/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5543 - accuracy: 0.8214
Epoch 45/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4439 - accuracy: 0.8561
Epoch 46/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4427 - accuracy: 0.8525
Epoch 47/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4604 - accuracy: 0.8500
Epoch 48/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4119 - accuracy: 0.8673
Epoch 49/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4822 - accuracy: 0.8501
Epoch 50/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4260 - accuracy: 0.8604
Epoch 51/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4724 - accuracy: 0.8545
Epoch 52/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3830 - accuracy: 0.8729
Epoch 53/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3650 - accuracy: 0.8837
Epoch 54/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3344 - accuracy: 0.8923
Epoch 55/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4152 - accuracy: 0.8654
Epoch 56/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3823 - accuracy: 0.8759
Epoch 57/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3467 - accuracy: 0.8880
Epoch 58/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4456 - accuracy: 0.8593
Epoch 59/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3372 - accuracy: 0.8962
Epoch 60/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3304 - accuracy: 0.8935
Epoch 61/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3185 - accuracy: 0.8990
Epoch 62/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3050 - accuracy: 0.8973
Epoch 63/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3686 - accuracy: 0.8829
Epoch 64/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2857 - accuracy: 0.9058
Epoch 65/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2835 - accuracy: 0.9088
Epoch 66/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3015 - accuracy: 0.9033
Epoch 67/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3048 - accuracy: 0.9030
Epoch 68/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2699 - accuracy: 0.9105
Epoch 69/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2661 - accuracy: 0.9119
Epoch 70/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2549 - accuracy: 0.9118
Epoch 71/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3172 - accuracy: 0.8995
Epoch 72/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2789 - accuracy: 0.9108
Epoch 73/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2537 - accuracy: 0.9222
Epoch 74/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2442 - accuracy: 0.9206
Epoch 75/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2420 - accuracy: 0.9226
Epoch 76/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2437 - accuracy: 0.9179
Epoch 77/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2738 - accuracy: 0.9128
Epoch 78/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2790 - accuracy: 0.9111
Epoch 79/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2235 - accuracy: 0.9237
Epoch 80/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2335 - accuracy: 0.9179
Epoch 81/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2326 - accuracy: 0.9214
Epoch 82/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2789 - accuracy: 0.9116
Epoch 83/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2366 - accuracy: 0.9239
Epoch 84/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2416 - accuracy: 0.9226
Epoch 85/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2652 - accuracy: 0.9176
Epoch 86/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2344 - accuracy: 0.9239
Epoch 87/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2178 - accuracy: 0.9322
Epoch 88/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2081 - accuracy: 0.9316
Epoch 89/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2451 - accuracy: 0.9217
Epoch 90/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2763 - accuracy: 0.9148
Epoch 91/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3458 - accuracy: 0.8927
Epoch 92/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2274 - accuracy: 0.9279
Epoch 93/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1987 - accuracy: 0.9377
Epoch 94/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2081 - accuracy: 0.9289
Epoch 95/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2080 - accuracy: 0.9320
Epoch 96/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2271 - accuracy: 0.9264
Epoch 97/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2238 - accuracy: 0.9271
Epoch 98/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2568 - accuracy: 0.9226
Epoch 99/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2184 - accuracy: 0.9329
Epoch 100/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2619 - accuracy: 0.9173
24/24 [==============================] - 0s 5ms/step - loss: 0.2595 - accuracy: 0.9242
Epoch 1/100
48/48 [==============================] - 1s 9ms/step - loss: 2.6372 - accuracy: 0.0872
Epoch 2/100
48/48 [==============================] - 0s 9ms/step - loss: 2.5445 - accuracy: 0.1007
Epoch 3/100
48/48 [==============================] - 1s 10ms/step - loss: 2.5290 - accuracy: 0.1211
Epoch 4/100
48/48 [==============================] - 0s 10ms/step - loss: 2.4342 - accuracy: 0.1435
Epoch 5/100
48/48 [==============================] - 0s 9ms/step - loss: 2.3560 - accuracy: 0.1738
Epoch 6/100
48/48 [==============================] - 0s 9ms/step - loss: 2.2476 - accuracy: 0.2190
Epoch 7/100
48/48 [==============================] - 0s 9ms/step - loss: 2.1577 - accuracy: 0.2647
Epoch 8/100
48/48 [==============================] - 0s 9ms/step - loss: 2.0120 - accuracy: 0.3228
Epoch 9/100
48/48 [==============================] - 0s 8ms/step - loss: 1.8770 - accuracy: 0.3818
Epoch 10/100
48/48 [==============================] - 0s 9ms/step - loss: 1.7945 - accuracy: 0.3999
Epoch 11/100
48/48 [==============================] - 0s 8ms/step - loss: 1.6448 - accuracy: 0.4567
Epoch 12/100
48/48 [==============================] - 0s 9ms/step - loss: 1.6152 - accuracy: 0.4730
Epoch 13/100
48/48 [==============================] - 0s 8ms/step - loss: 1.4550 - accuracy: 0.5125
Epoch 14/100
48/48 [==============================] - 0s 9ms/step - loss: 1.4266 - accuracy: 0.5262
Epoch 15/100
48/48 [==============================] - 0s 9ms/step - loss: 1.3182 - accuracy: 0.5594
Epoch 16/100
48/48 [==============================] - 0s 8ms/step - loss: 1.2837 - accuracy: 0.5863
Epoch 17/100
48/48 [==============================] - 0s 9ms/step - loss: 1.1676 - accuracy: 0.6229
Epoch 18/100
48/48 [==============================] - 0s 9ms/step - loss: 1.1341 - accuracy: 0.6265
Epoch 19/100
48/48 [==============================] - 0s 9ms/step - loss: 1.0614 - accuracy: 0.6553
Epoch 20/100
48/48 [==============================] - 0s 9ms/step - loss: 1.0213 - accuracy: 0.6700
Epoch 21/100
48/48 [==============================] - 0s 9ms/step - loss: 0.9993 - accuracy: 0.6730
Epoch 22/100
48/48 [==============================] - 0s 9ms/step - loss: 0.9084 - accuracy: 0.7021
Epoch 23/100
48/48 [==============================] - 0s 9ms/step - loss: 0.9014 - accuracy: 0.7073
Epoch 24/100
48/48 [==============================] - 0s 9ms/step - loss: 0.9587 - accuracy: 0.6882
Epoch 25/100
48/48 [==============================] - 0s 9ms/step - loss: 0.8317 - accuracy: 0.7254
Epoch 26/100
48/48 [==============================] - 0s 9ms/step - loss: 0.7937 - accuracy: 0.7365
Epoch 27/100
48/48 [==============================] - 0s 9ms/step - loss: 0.7916 - accuracy: 0.7435
Epoch 28/100
48/48 [==============================] - 0s 9ms/step - loss: 0.8417 - accuracy: 0.7262
Epoch 29/100
48/48 [==============================] - 0s 9ms/step - loss: 0.7744 - accuracy: 0.7488
Epoch 30/100
48/48 [==============================] - 0s 9ms/step - loss: 0.8614 - accuracy: 0.7279
Epoch 31/100
48/48 [==============================] - 0s 9ms/step - loss: 0.7027 - accuracy: 0.7721
Epoch 32/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6619 - accuracy: 0.7830
Epoch 33/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6747 - accuracy: 0.7807
Epoch 34/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5973 - accuracy: 0.8074
Epoch 35/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6230 - accuracy: 0.7955
Epoch 36/100
48/48 [==============================] - 0s 9ms/step - loss: 0.6197 - accuracy: 0.8015
Epoch 37/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5775 - accuracy: 0.8113
Epoch 38/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5960 - accuracy: 0.8088
Epoch 39/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5953 - accuracy: 0.8048
Epoch 40/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5333 - accuracy: 0.8217
Epoch 41/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5081 - accuracy: 0.8347
Epoch 42/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4659 - accuracy: 0.8525
Epoch 43/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5601 - accuracy: 0.8216
Epoch 44/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4940 - accuracy: 0.8400
Epoch 45/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5049 - accuracy: 0.8364
Epoch 46/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4819 - accuracy: 0.8422
Epoch 47/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4439 - accuracy: 0.8570
Epoch 48/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4459 - accuracy: 0.8481
Epoch 49/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4327 - accuracy: 0.8588
Epoch 50/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3992 - accuracy: 0.8709
Epoch 51/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3934 - accuracy: 0.8727
Epoch 52/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4107 - accuracy: 0.8702
Epoch 53/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4195 - accuracy: 0.8648
Epoch 54/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4188 - accuracy: 0.8621
Epoch 55/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3647 - accuracy: 0.8802
Epoch 56/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3713 - accuracy: 0.8729
Epoch 57/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3577 - accuracy: 0.8847
Epoch 58/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3562 - accuracy: 0.8852
Epoch 59/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3482 - accuracy: 0.8879
Epoch 60/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3630 - accuracy: 0.8864
Epoch 61/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3521 - accuracy: 0.8898
Epoch 62/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5327 - accuracy: 0.8337
Epoch 63/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3345 - accuracy: 0.8864
Epoch 64/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3259 - accuracy: 0.8925
Epoch 65/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3739 - accuracy: 0.8769
Epoch 66/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3008 - accuracy: 0.8988
Epoch 67/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2796 - accuracy: 0.9070
Epoch 68/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3096 - accuracy: 0.8975
Epoch 69/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3977 - accuracy: 0.8761
Epoch 70/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2831 - accuracy: 0.9129
Epoch 71/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2757 - accuracy: 0.9093
Epoch 72/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2729 - accuracy: 0.9103
Epoch 73/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3222 - accuracy: 0.8960
Epoch 74/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2579 - accuracy: 0.9154
Epoch 75/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2598 - accuracy: 0.9181
Epoch 76/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2458 - accuracy: 0.9191
Epoch 77/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2633 - accuracy: 0.9159
Epoch 78/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2611 - accuracy: 0.9184
Epoch 79/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2337 - accuracy: 0.9271
Epoch 80/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2592 - accuracy: 0.9181
Epoch 81/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2468 - accuracy: 0.9251
Epoch 82/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2537 - accuracy: 0.9168
Epoch 83/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2309 - accuracy: 0.9264
Epoch 84/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2555 - accuracy: 0.9186
Epoch 85/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2495 - accuracy: 0.9196
Epoch 86/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2266 - accuracy: 0.9249
Epoch 87/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2444 - accuracy: 0.9236
Epoch 88/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3150 - accuracy: 0.8998
Epoch 89/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2144 - accuracy: 0.9317
Epoch 90/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2357 - accuracy: 0.9214
Epoch 91/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2191 - accuracy: 0.9301
Epoch 92/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1971 - accuracy: 0.9354
Epoch 93/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2010 - accuracy: 0.9332
Epoch 94/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2087 - accuracy: 0.9317
Epoch 95/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3597 - accuracy: 0.8928
Epoch 96/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1946 - accuracy: 0.9422
Epoch 97/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3672 - accuracy: 0.8855
Epoch 98/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2460 - accuracy: 0.9229
Epoch 99/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2194 - accuracy: 0.9309
Epoch 100/100
48/48 [==============================] - 0s 9ms/step - loss: 0.1840 - accuracy: 0.9374
24/24 [==============================] - 0s 4ms/step - loss: 0.7443 - accuracy: 0.7979
Epoch 1/100
48/48 [==============================] - 2s 10ms/step - loss: 2.6664 - accuracy: 0.0907
Epoch 2/100
48/48 [==============================] - 0s 10ms/step - loss: 2.6118 - accuracy: 0.1030
Epoch 3/100
48/48 [==============================] - 0s 10ms/step - loss: 2.5370 - accuracy: 0.1331
Epoch 4/100
48/48 [==============================] - 1s 10ms/step - loss: 2.4631 - accuracy: 0.1702
Epoch 5/100
48/48 [==============================] - 0s 10ms/step - loss: 2.3184 - accuracy: 0.2296
Epoch 6/100
48/48 [==============================] - 0s 10ms/step - loss: 2.2411 - accuracy: 0.2700
Epoch 7/100
48/48 [==============================] - 0s 10ms/step - loss: 2.0975 - accuracy: 0.3179
Epoch 8/100
48/48 [==============================] - 1s 10ms/step - loss: 2.0005 - accuracy: 0.3566
Epoch 9/100
48/48 [==============================] - 1s 11ms/step - loss: 1.9163 - accuracy: 0.3792
Epoch 10/100
48/48 [==============================] - 0s 10ms/step - loss: 1.8545 - accuracy: 0.4015
Epoch 11/100
48/48 [==============================] - 0s 10ms/step - loss: 1.7363 - accuracy: 0.4427
Epoch 12/100
48/48 [==============================] - 0s 10ms/step - loss: 1.6282 - accuracy: 0.4777
Epoch 13/100
48/48 [==============================] - 0s 10ms/step - loss: 1.5778 - accuracy: 0.4944
Epoch 14/100
48/48 [==============================] - 0s 10ms/step - loss: 1.4990 - accuracy: 0.5163
Epoch 15/100
48/48 [==============================] - 0s 10ms/step - loss: 1.4066 - accuracy: 0.5390
Epoch 16/100
48/48 [==============================] - 0s 10ms/step - loss: 1.3736 - accuracy: 0.5616
Epoch 17/100
48/48 [==============================] - 0s 10ms/step - loss: 1.3079 - accuracy: 0.5841
Epoch 18/100
48/48 [==============================] - 0s 10ms/step - loss: 1.2400 - accuracy: 0.5941
Epoch 19/100
48/48 [==============================] - 0s 10ms/step - loss: 1.1869 - accuracy: 0.6226
Epoch 20/100
48/48 [==============================] - 0s 10ms/step - loss: 1.1505 - accuracy: 0.6294
Epoch 21/100
48/48 [==============================] - 0s 10ms/step - loss: 1.0639 - accuracy: 0.6582
Epoch 22/100
48/48 [==============================] - 0s 9ms/step - loss: 1.0286 - accuracy: 0.6717
Epoch 23/100
48/48 [==============================] - 0s 10ms/step - loss: 0.9863 - accuracy: 0.6830
Epoch 24/100
48/48 [==============================] - 0s 10ms/step - loss: 0.9870 - accuracy: 0.6849
Epoch 25/100
48/48 [==============================] - 0s 10ms/step - loss: 0.9325 - accuracy: 0.7047
Epoch 26/100
48/48 [==============================] - 0s 10ms/step - loss: 0.8661 - accuracy: 0.7207
Epoch 27/100
48/48 [==============================] - 0s 10ms/step - loss: 0.8122 - accuracy: 0.7394
Epoch 28/100
48/48 [==============================] - 1s 10ms/step - loss: 0.8291 - accuracy: 0.7301
Epoch 29/100
48/48 [==============================] - 0s 10ms/step - loss: 0.7664 - accuracy: 0.7569
Epoch 30/100
48/48 [==============================] - 0s 10ms/step - loss: 0.7366 - accuracy: 0.7679
Epoch 31/100
48/48 [==============================] - 0s 10ms/step - loss: 0.7133 - accuracy: 0.7752
Epoch 32/100
48/48 [==============================] - 0s 10ms/step - loss: 0.6922 - accuracy: 0.7807
Epoch 33/100
48/48 [==============================] - 0s 10ms/step - loss: 0.6726 - accuracy: 0.7866
Epoch 34/100
48/48 [==============================] - 0s 10ms/step - loss: 0.6381 - accuracy: 0.7973
Epoch 35/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5989 - accuracy: 0.8102
Epoch 36/100
48/48 [==============================] - 0s 10ms/step - loss: 0.6138 - accuracy: 0.8102
Epoch 37/100
48/48 [==============================] - 1s 11ms/step - loss: 0.5800 - accuracy: 0.8194
Epoch 38/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5788 - accuracy: 0.8252
Epoch 39/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5234 - accuracy: 0.8267
Epoch 40/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4957 - accuracy: 0.8476
Epoch 41/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5208 - accuracy: 0.8320
Epoch 42/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5063 - accuracy: 0.8425
Epoch 43/100
48/48 [==============================] - 1s 10ms/step - loss: 0.4851 - accuracy: 0.8514
Epoch 44/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4452 - accuracy: 0.8546
Epoch 45/100
48/48 [==============================] - 1s 10ms/step - loss: 0.4334 - accuracy: 0.8659
Epoch 46/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4441 - accuracy: 0.8589
Epoch 47/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4197 - accuracy: 0.8671
Epoch 48/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4211 - accuracy: 0.8692
Epoch 49/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4233 - accuracy: 0.8697
Epoch 50/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3814 - accuracy: 0.8819
Epoch 51/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3895 - accuracy: 0.8789
Epoch 52/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3670 - accuracy: 0.8855
Epoch 53/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3531 - accuracy: 0.8898
Epoch 54/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3784 - accuracy: 0.8852
Epoch 55/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3537 - accuracy: 0.8902
Epoch 56/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3434 - accuracy: 0.8927
Epoch 57/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3241 - accuracy: 0.9010
Epoch 58/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3297 - accuracy: 0.8996
Epoch 59/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3110 - accuracy: 0.9043
Epoch 60/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3440 - accuracy: 0.8930
Epoch 61/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3180 - accuracy: 0.9025
Epoch 62/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3021 - accuracy: 0.9021
Epoch 63/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3024 - accuracy: 0.9101
Epoch 64/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2883 - accuracy: 0.9133
Epoch 65/100
48/48 [==============================] - 1s 10ms/step - loss: 0.3098 - accuracy: 0.9046
Epoch 66/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4113 - accuracy: 0.9055
Epoch 67/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2965 - accuracy: 0.9114
Epoch 68/100
48/48 [==============================] - 1s 10ms/step - loss: 0.2773 - accuracy: 0.9136
Epoch 69/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2778 - accuracy: 0.9091
Epoch 70/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2692 - accuracy: 0.9158
Epoch 71/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2635 - accuracy: 0.9217
Epoch 72/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2675 - accuracy: 0.9148
Epoch 73/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2463 - accuracy: 0.9231
Epoch 74/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2679 - accuracy: 0.9169
Epoch 75/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2352 - accuracy: 0.9249
Epoch 76/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2588 - accuracy: 0.9207
Epoch 77/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2749 - accuracy: 0.9212
Epoch 78/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2461 - accuracy: 0.9290
Epoch 79/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2232 - accuracy: 0.9287
Epoch 80/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2515 - accuracy: 0.9264
Epoch 81/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2589 - accuracy: 0.9256
Epoch 82/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2210 - accuracy: 0.9322
Epoch 83/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2137 - accuracy: 0.9347
Epoch 84/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2441 - accuracy: 0.9299
Epoch 85/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2386 - accuracy: 0.9297
Epoch 86/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2138 - accuracy: 0.9330
Epoch 87/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2188 - accuracy: 0.9319
Epoch 88/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2111 - accuracy: 0.9330
Epoch 89/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2307 - accuracy: 0.9315
Epoch 90/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2353 - accuracy: 0.9327
Epoch 91/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1959 - accuracy: 0.9433
Epoch 92/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2135 - accuracy: 0.9393
Epoch 93/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2365 - accuracy: 0.9337
Epoch 94/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1989 - accuracy: 0.9415
Epoch 95/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2212 - accuracy: 0.9355
Epoch 96/100
48/48 [==============================] - 1s 14ms/step - loss: 0.2072 - accuracy: 0.9385
Epoch 97/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2083 - accuracy: 0.9372
Epoch 98/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1863 - accuracy: 0.9440
Epoch 99/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1922 - accuracy: 0.9412
Epoch 100/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1939 - accuracy: 0.9435
24/24 [==============================] - 0s 4ms/step - loss: 0.3688 - accuracy: 0.9027
Epoch 1/100
48/48 [==============================] - 1s 10ms/step - loss: 2.6475 - accuracy: 0.1047
Epoch 2/100
48/48 [==============================] - 0s 10ms/step - loss: 2.5726 - accuracy: 0.1341
Epoch 3/100
48/48 [==============================] - 1s 11ms/step - loss: 2.5181 - accuracy: 0.1553
Epoch 4/100
48/48 [==============================] - 1s 11ms/step - loss: 2.4230 - accuracy: 0.1984
Epoch 5/100
48/48 [==============================] - 1s 11ms/step - loss: 2.3241 - accuracy: 0.2384
Epoch 6/100
48/48 [==============================] - 1s 11ms/step - loss: 2.2108 - accuracy: 0.2781
Epoch 7/100
48/48 [==============================] - 0s 10ms/step - loss: 2.1085 - accuracy: 0.3187
Epoch 8/100
48/48 [==============================] - 0s 10ms/step - loss: 2.0093 - accuracy: 0.3564
Epoch 9/100
48/48 [==============================] - 0s 10ms/step - loss: 1.9396 - accuracy: 0.3776
Epoch 10/100
48/48 [==============================] - 1s 11ms/step - loss: 1.8312 - accuracy: 0.4150
Epoch 11/100
48/48 [==============================] - 0s 10ms/step - loss: 1.7540 - accuracy: 0.4482
Epoch 12/100
48/48 [==============================] - 1s 11ms/step - loss: 1.6326 - accuracy: 0.4718
Epoch 13/100
48/48 [==============================] - 1s 10ms/step - loss: 1.5698 - accuracy: 0.5059
Epoch 14/100
48/48 [==============================] - 0s 9ms/step - loss: 1.4839 - accuracy: 0.5222
Epoch 15/100
48/48 [==============================] - 0s 9ms/step - loss: 1.4347 - accuracy: 0.5400
Epoch 16/100
48/48 [==============================] - 0s 9ms/step - loss: 1.3088 - accuracy: 0.5818
Epoch 17/100
48/48 [==============================] - 0s 10ms/step - loss: 1.2979 - accuracy: 0.5893
Epoch 18/100
48/48 [==============================] - 0s 10ms/step - loss: 1.2185 - accuracy: 0.6175
Epoch 19/100
48/48 [==============================] - 0s 10ms/step - loss: 1.1892 - accuracy: 0.6229
Epoch 20/100
48/48 [==============================] - 0s 10ms/step - loss: 1.1172 - accuracy: 0.6418
Epoch 21/100
48/48 [==============================] - 1s 10ms/step - loss: 1.0555 - accuracy: 0.6639
Epoch 22/100
48/48 [==============================] - 0s 10ms/step - loss: 1.0387 - accuracy: 0.6767
Epoch 23/100
48/48 [==============================] - 0s 10ms/step - loss: 0.9718 - accuracy: 0.6905
Epoch 24/100
48/48 [==============================] - 0s 10ms/step - loss: 0.9429 - accuracy: 0.7004
Epoch 25/100
48/48 [==============================] - 1s 11ms/step - loss: 0.9254 - accuracy: 0.7061
Epoch 26/100
48/48 [==============================] - 0s 10ms/step - loss: 0.8918 - accuracy: 0.7141
Epoch 27/100
48/48 [==============================] - 0s 9ms/step - loss: 0.8446 - accuracy: 0.7388
Epoch 28/100
48/48 [==============================] - 0s 10ms/step - loss: 0.8055 - accuracy: 0.7473
Epoch 29/100
48/48 [==============================] - 0s 10ms/step - loss: 0.7560 - accuracy: 0.7583
Epoch 30/100
48/48 [==============================] - 0s 10ms/step - loss: 0.7243 - accuracy: 0.7691
Epoch 31/100
48/48 [==============================] - 0s 10ms/step - loss: 0.7119 - accuracy: 0.7820
Epoch 32/100
48/48 [==============================] - 0s 10ms/step - loss: 0.6889 - accuracy: 0.7832
Epoch 33/100
48/48 [==============================] - 1s 10ms/step - loss: 0.6653 - accuracy: 0.7872
Epoch 34/100
48/48 [==============================] - 0s 10ms/step - loss: 0.6413 - accuracy: 0.7981
Epoch 35/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5775 - accuracy: 0.8179
Epoch 36/100
48/48 [==============================] - 0s 10ms/step - loss: 0.6134 - accuracy: 0.8093
Epoch 37/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5901 - accuracy: 0.8143
Epoch 38/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5715 - accuracy: 0.8167
Epoch 39/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5451 - accuracy: 0.8267
Epoch 40/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5198 - accuracy: 0.8349
Epoch 41/100
48/48 [==============================] - 0s 9ms/step - loss: 0.5179 - accuracy: 0.8349
Epoch 42/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5006 - accuracy: 0.8408
Epoch 43/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4873 - accuracy: 0.8491
Epoch 44/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4527 - accuracy: 0.8568
Epoch 45/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4708 - accuracy: 0.8565
Epoch 46/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4343 - accuracy: 0.8631
Epoch 47/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4300 - accuracy: 0.8671
Epoch 48/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4147 - accuracy: 0.8663
Epoch 49/100
48/48 [==============================] - 0s 9ms/step - loss: 0.4024 - accuracy: 0.8691
Epoch 50/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4091 - accuracy: 0.8731
Epoch 51/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3940 - accuracy: 0.8779
Epoch 52/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3959 - accuracy: 0.8769
Epoch 53/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3711 - accuracy: 0.8840
Epoch 54/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3626 - accuracy: 0.8835
Epoch 55/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3486 - accuracy: 0.8912
Epoch 56/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3540 - accuracy: 0.8923
Epoch 57/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3400 - accuracy: 0.8879
Epoch 58/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3397 - accuracy: 0.8907
Epoch 59/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3314 - accuracy: 0.8950
Epoch 60/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3307 - accuracy: 0.9010
Epoch 61/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2955 - accuracy: 0.9021
Epoch 62/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3163 - accuracy: 0.9040
Epoch 63/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3260 - accuracy: 0.9021
Epoch 64/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3124 - accuracy: 0.9050
Epoch 65/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2665 - accuracy: 0.9188
Epoch 66/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2827 - accuracy: 0.9144
Epoch 67/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3004 - accuracy: 0.9041
Epoch 68/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2728 - accuracy: 0.9164
Epoch 69/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2756 - accuracy: 0.9173
Epoch 70/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3258 - accuracy: 0.9031
Epoch 71/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2587 - accuracy: 0.9201
Epoch 72/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2825 - accuracy: 0.9133
Epoch 73/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2732 - accuracy: 0.9131
Epoch 74/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2535 - accuracy: 0.9181
Epoch 75/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2674 - accuracy: 0.9241
Epoch 76/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2574 - accuracy: 0.9203
Epoch 77/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2540 - accuracy: 0.9214
Epoch 78/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2398 - accuracy: 0.9239
Epoch 79/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2494 - accuracy: 0.9249
Epoch 80/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2569 - accuracy: 0.9221
Epoch 81/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2100 - accuracy: 0.9317
Epoch 82/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2546 - accuracy: 0.9234
Epoch 83/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2176 - accuracy: 0.9314
Epoch 84/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2402 - accuracy: 0.9312
Epoch 85/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2476 - accuracy: 0.9286
Epoch 86/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2364 - accuracy: 0.9277
Epoch 87/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2281 - accuracy: 0.9316
Epoch 88/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2230 - accuracy: 0.9334
Epoch 89/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2278 - accuracy: 0.9311
Epoch 90/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2407 - accuracy: 0.9269
Epoch 91/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2289 - accuracy: 0.9345
Epoch 92/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2290 - accuracy: 0.9364
Epoch 93/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2097 - accuracy: 0.9420
Epoch 94/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2333 - accuracy: 0.9332
Epoch 95/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2066 - accuracy: 0.9422
Epoch 96/100
48/48 [==============================] - 1s 10ms/step - loss: 0.2218 - accuracy: 0.9322
Epoch 97/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2083 - accuracy: 0.9375
Epoch 98/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2282 - accuracy: 0.9319
Epoch 99/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2140 - accuracy: 0.9349
Epoch 100/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2269 - accuracy: 0.9335
24/24 [==============================] - 0s 4ms/step - loss: 0.3291 - accuracy: 0.9040
Epoch 1/100
48/48 [==============================] - 1s 10ms/step - loss: 2.6401 - accuracy: 0.0980
Epoch 2/100
48/48 [==============================] - 1s 11ms/step - loss: 2.5551 - accuracy: 0.1314
Epoch 3/100
48/48 [==============================] - 0s 10ms/step - loss: 2.4805 - accuracy: 0.1547
Epoch 4/100
48/48 [==============================] - 0s 10ms/step - loss: 2.4058 - accuracy: 0.1854
Epoch 5/100
48/48 [==============================] - 1s 10ms/step - loss: 2.2910 - accuracy: 0.2396
Epoch 6/100
48/48 [==============================] - 0s 10ms/step - loss: 2.1852 - accuracy: 0.2780
Epoch 7/100
48/48 [==============================] - 1s 10ms/step - loss: 2.0812 - accuracy: 0.3155
Epoch 8/100
48/48 [==============================] - 0s 10ms/step - loss: 1.9946 - accuracy: 0.3547
Epoch 9/100
48/48 [==============================] - 0s 10ms/step - loss: 1.9111 - accuracy: 0.3761
Epoch 10/100
48/48 [==============================] - 0s 10ms/step - loss: 1.8245 - accuracy: 0.4077
Epoch 11/100
48/48 [==============================] - 0s 10ms/step - loss: 1.7339 - accuracy: 0.4336
Epoch 12/100
48/48 [==============================] - 0s 10ms/step - loss: 1.6728 - accuracy: 0.4604
Epoch 13/100
48/48 [==============================] - 0s 9ms/step - loss: 1.5664 - accuracy: 0.4956
Epoch 14/100
48/48 [==============================] - 0s 10ms/step - loss: 1.4804 - accuracy: 0.5275
Epoch 15/100
48/48 [==============================] - 0s 10ms/step - loss: 1.4583 - accuracy: 0.5418
Epoch 16/100
48/48 [==============================] - 0s 10ms/step - loss: 1.3573 - accuracy: 0.5695
Epoch 17/100
48/48 [==============================] - 0s 10ms/step - loss: 1.2959 - accuracy: 0.5895
Epoch 18/100
48/48 [==============================] - 0s 10ms/step - loss: 1.2114 - accuracy: 0.6101
Epoch 19/100
48/48 [==============================] - 0s 10ms/step - loss: 1.1666 - accuracy: 0.6308
Epoch 20/100
48/48 [==============================] - 1s 10ms/step - loss: 1.1142 - accuracy: 0.6445
Epoch 21/100
48/48 [==============================] - 0s 10ms/step - loss: 1.0548 - accuracy: 0.6664
Epoch 22/100
48/48 [==============================] - 0s 10ms/step - loss: 1.0259 - accuracy: 0.6757
Epoch 23/100
48/48 [==============================] - 1s 10ms/step - loss: 0.9804 - accuracy: 0.6892
Epoch 24/100
48/48 [==============================] - 0s 10ms/step - loss: 0.9057 - accuracy: 0.7131
Epoch 25/100
48/48 [==============================] - 0s 10ms/step - loss: 0.8742 - accuracy: 0.7239
Epoch 26/100
48/48 [==============================] - 0s 10ms/step - loss: 0.8500 - accuracy: 0.7255
Epoch 27/100
48/48 [==============================] - 0s 10ms/step - loss: 0.8150 - accuracy: 0.7363
Epoch 28/100
48/48 [==============================] - 0s 10ms/step - loss: 0.7756 - accuracy: 0.7520
Epoch 29/100
48/48 [==============================] - 0s 10ms/step - loss: 0.7594 - accuracy: 0.7634
Epoch 30/100
48/48 [==============================] - 0s 10ms/step - loss: 0.7307 - accuracy: 0.7636
Epoch 31/100
48/48 [==============================] - 0s 10ms/step - loss: 0.7166 - accuracy: 0.7745
Epoch 32/100
48/48 [==============================] - 0s 10ms/step - loss: 0.6812 - accuracy: 0.7880
Epoch 33/100
48/48 [==============================] - 0s 10ms/step - loss: 0.6595 - accuracy: 0.7885
Epoch 34/100
48/48 [==============================] - 0s 10ms/step - loss: 0.6182 - accuracy: 0.8021
Epoch 35/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5908 - accuracy: 0.8108
Epoch 36/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5719 - accuracy: 0.8139
Epoch 37/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5729 - accuracy: 0.8153
Epoch 38/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5485 - accuracy: 0.8257
Epoch 39/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5214 - accuracy: 0.8403
Epoch 40/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5476 - accuracy: 0.8285
Epoch 41/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4882 - accuracy: 0.8513
Epoch 42/100
48/48 [==============================] - 0s 10ms/step - loss: 0.5056 - accuracy: 0.8433
Epoch 43/100
48/48 [==============================] - 1s 10ms/step - loss: 0.4784 - accuracy: 0.8442
Epoch 44/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4393 - accuracy: 0.8598
Epoch 45/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4493 - accuracy: 0.8575
Epoch 46/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4540 - accuracy: 0.8604
Epoch 47/100
48/48 [==============================] - 0s 10ms/step - loss: 0.4249 - accuracy: 0.8663
Epoch 48/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3980 - accuracy: 0.8727
Epoch 49/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3960 - accuracy: 0.8742
Epoch 50/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3944 - accuracy: 0.8787
Epoch 51/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3814 - accuracy: 0.8795
Epoch 52/100
48/48 [==============================] - 1s 10ms/step - loss: 0.3599 - accuracy: 0.8857
Epoch 53/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3729 - accuracy: 0.8812
Epoch 54/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3498 - accuracy: 0.8892
Epoch 55/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3256 - accuracy: 0.8918
Epoch 56/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3634 - accuracy: 0.8849
Epoch 57/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3212 - accuracy: 0.8983
Epoch 58/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3072 - accuracy: 0.9060
Epoch 59/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3130 - accuracy: 0.9026
Epoch 60/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3174 - accuracy: 0.9026
Epoch 61/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3196 - accuracy: 0.9006
Epoch 62/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2793 - accuracy: 0.9098
Epoch 63/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2770 - accuracy: 0.9134
Epoch 64/100
48/48 [==============================] - 0s 10ms/step - loss: 0.3047 - accuracy: 0.9036
Epoch 65/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2728 - accuracy: 0.9139
Epoch 66/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2799 - accuracy: 0.9129
Epoch 67/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2980 - accuracy: 0.9134
Epoch 68/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2806 - accuracy: 0.9151
Epoch 69/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2680 - accuracy: 0.9179
Epoch 70/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2970 - accuracy: 0.9178
Epoch 71/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2335 - accuracy: 0.9259
Epoch 72/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2546 - accuracy: 0.9188
Epoch 73/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2513 - accuracy: 0.9211
Epoch 74/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2687 - accuracy: 0.9199
Epoch 75/100
48/48 [==============================] - 0s 9ms/step - loss: 0.3000 - accuracy: 0.9196
Epoch 76/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2441 - accuracy: 0.9229
Epoch 77/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2448 - accuracy: 0.9211
Epoch 78/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2410 - accuracy: 0.9297
Epoch 79/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2389 - accuracy: 0.9252
Epoch 80/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2086 - accuracy: 0.9337
Epoch 81/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2396 - accuracy: 0.9259
Epoch 82/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2262 - accuracy: 0.9329
Epoch 83/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2115 - accuracy: 0.9345
Epoch 84/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2355 - accuracy: 0.9274
Epoch 85/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1942 - accuracy: 0.9392
Epoch 86/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2148 - accuracy: 0.9365
Epoch 87/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2133 - accuracy: 0.9395
Epoch 88/100
48/48 [==============================] - 0s 9ms/step - loss: 0.2181 - accuracy: 0.9345
Epoch 89/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2345 - accuracy: 0.9282
Epoch 90/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2372 - accuracy: 0.9302
Epoch 91/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2039 - accuracy: 0.9392
Epoch 92/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2023 - accuracy: 0.9389
Epoch 93/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2213 - accuracy: 0.9354
Epoch 94/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2122 - accuracy: 0.9402
Epoch 95/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2406 - accuracy: 0.9311
Epoch 96/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2037 - accuracy: 0.9417
Epoch 97/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1987 - accuracy: 0.9387
Epoch 98/100
48/48 [==============================] - 0s 10ms/step - loss: 0.2045 - accuracy: 0.9407
Epoch 99/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1832 - accuracy: 0.9472
Epoch 100/100
48/48 [==============================] - 0s 10ms/step - loss: 0.1919 - accuracy: 0.9437
24/24 [==============================] - 0s 4ms/step - loss: 0.2810 - accuracy: 0.9172
Epoch 1/100
48/48 [==============================] - 2s 12ms/step - loss: 2.6404 - accuracy: 0.0984
Epoch 2/100
48/48 [==============================] - 1s 12ms/step - loss: 2.5833 - accuracy: 0.1108
Epoch 3/100
48/48 [==============================] - 1s 11ms/step - loss: 2.5219 - accuracy: 0.1301
Epoch 4/100
48/48 [==============================] - 1s 12ms/step - loss: 2.4261 - accuracy: 0.1856
Epoch 5/100
48/48 [==============================] - 1s 12ms/step - loss: 2.3034 - accuracy: 0.2453
Epoch 6/100
48/48 [==============================] - 1s 12ms/step - loss: 2.2930 - accuracy: 0.2527
Epoch 7/100
48/48 [==============================] - 1s 12ms/step - loss: 2.0680 - accuracy: 0.3217
Epoch 8/100
48/48 [==============================] - 1s 11ms/step - loss: 2.0475 - accuracy: 0.3435
Epoch 9/100
48/48 [==============================] - 1s 12ms/step - loss: 1.8486 - accuracy: 0.3975
Epoch 10/100
48/48 [==============================] - 1s 12ms/step - loss: 1.7760 - accuracy: 0.4299
Epoch 11/100
48/48 [==============================] - 1s 11ms/step - loss: 1.7133 - accuracy: 0.4523
Epoch 12/100
48/48 [==============================] - 1s 12ms/step - loss: 1.6040 - accuracy: 0.4842
Epoch 13/100
48/48 [==============================] - 1s 12ms/step - loss: 1.4988 - accuracy: 0.5208
Epoch 14/100
48/48 [==============================] - 1s 11ms/step - loss: 1.4120 - accuracy: 0.5467
Epoch 15/100
48/48 [==============================] - 1s 12ms/step - loss: 1.7091 - accuracy: 0.4877
Epoch 16/100
48/48 [==============================] - 1s 11ms/step - loss: 1.3149 - accuracy: 0.5799
Epoch 17/100
48/48 [==============================] - 1s 12ms/step - loss: 1.2323 - accuracy: 0.6024
Epoch 18/100
48/48 [==============================] - 1s 11ms/step - loss: 1.1846 - accuracy: 0.6160
Epoch 19/100
48/48 [==============================] - 1s 11ms/step - loss: 1.2693 - accuracy: 0.6080
Epoch 20/100
48/48 [==============================] - 1s 12ms/step - loss: 1.0462 - accuracy: 0.6633
Epoch 21/100
48/48 [==============================] - 1s 12ms/step - loss: 1.0162 - accuracy: 0.6805
Epoch 22/100
48/48 [==============================] - 1s 11ms/step - loss: 1.2364 - accuracy: 0.6157
Epoch 23/100
48/48 [==============================] - 1s 12ms/step - loss: 0.9669 - accuracy: 0.6951
Epoch 24/100
48/48 [==============================] - 1s 12ms/step - loss: 0.8784 - accuracy: 0.7175
Epoch 25/100
48/48 [==============================] - 1s 12ms/step - loss: 0.8765 - accuracy: 0.7150
Epoch 26/100
48/48 [==============================] - 1s 12ms/step - loss: 0.7983 - accuracy: 0.7403
Epoch 27/100
48/48 [==============================] - 1s 12ms/step - loss: 0.8885 - accuracy: 0.7237
Epoch 28/100
48/48 [==============================] - 1s 12ms/step - loss: 1.6407 - accuracy: 0.5851
Epoch 29/100
48/48 [==============================] - 1s 12ms/step - loss: 0.8721 - accuracy: 0.7175
Epoch 30/100
48/48 [==============================] - 1s 12ms/step - loss: 0.7926 - accuracy: 0.7491
Epoch 31/100
48/48 [==============================] - 1s 11ms/step - loss: 0.7422 - accuracy: 0.7572
Epoch 32/100
48/48 [==============================] - 1s 11ms/step - loss: 0.6811 - accuracy: 0.7795
Epoch 33/100
48/48 [==============================] - 1s 12ms/step - loss: 0.8143 - accuracy: 0.7439
Epoch 34/100
48/48 [==============================] - 1s 12ms/step - loss: 0.6625 - accuracy: 0.7940
Epoch 35/100
48/48 [==============================] - 1s 11ms/step - loss: 0.6077 - accuracy: 0.8071
Epoch 36/100
48/48 [==============================] - 1s 11ms/step - loss: 0.5862 - accuracy: 0.8134
Epoch 37/100
48/48 [==============================] - 1s 11ms/step - loss: 0.5751 - accuracy: 0.8127
Epoch 38/100
48/48 [==============================] - 1s 12ms/step - loss: 0.5542 - accuracy: 0.8195
Epoch 39/100
48/48 [==============================] - 1s 12ms/step - loss: 0.5681 - accuracy: 0.8154
Epoch 40/100
48/48 [==============================] - 1s 12ms/step - loss: 0.5273 - accuracy: 0.8277
Epoch 41/100
48/48 [==============================] - 1s 12ms/step - loss: 0.5907 - accuracy: 0.8144
Epoch 42/100
48/48 [==============================] - 1s 12ms/step - loss: 0.4908 - accuracy: 0.8440
Epoch 43/100
48/48 [==============================] - 1s 12ms/step - loss: 0.5357 - accuracy: 0.8257
Epoch 44/100
48/48 [==============================] - 1s 12ms/step - loss: 0.4635 - accuracy: 0.8490
Epoch 45/100
48/48 [==============================] - 1s 12ms/step - loss: 0.4689 - accuracy: 0.8491
Epoch 46/100
48/48 [==============================] - 1s 12ms/step - loss: 0.4517 - accuracy: 0.8523
Epoch 47/100
48/48 [==============================] - 1s 11ms/step - loss: 0.7383 - accuracy: 0.8034
Epoch 48/100
48/48 [==============================] - 1s 11ms/step - loss: 0.4484 - accuracy: 0.8616
Epoch 49/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3999 - accuracy: 0.8767
Epoch 50/100
48/48 [==============================] - 1s 12ms/step - loss: 0.4036 - accuracy: 0.8742
Epoch 51/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3839 - accuracy: 0.8742
Epoch 52/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3938 - accuracy: 0.8724
Epoch 53/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3641 - accuracy: 0.8782
Epoch 54/100
48/48 [==============================] - 1s 11ms/step - loss: 0.6312 - accuracy: 0.8260
Epoch 55/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3920 - accuracy: 0.8762
Epoch 56/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3759 - accuracy: 0.8792
Epoch 57/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3558 - accuracy: 0.8820
Epoch 58/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3276 - accuracy: 0.8920
Epoch 59/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3100 - accuracy: 0.9011
Epoch 60/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3211 - accuracy: 0.8958
Epoch 61/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2963 - accuracy: 0.9026
Epoch 62/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3088 - accuracy: 0.8968
Epoch 63/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3495 - accuracy: 0.8878
Epoch 64/100
48/48 [==============================] - 1s 11ms/step - loss: 0.6309 - accuracy: 0.8154
Epoch 65/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3717 - accuracy: 0.8835
Epoch 66/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3211 - accuracy: 0.8970
Epoch 67/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3088 - accuracy: 0.8978
Epoch 68/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2823 - accuracy: 0.9030
Epoch 69/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3659 - accuracy: 0.8858
Epoch 70/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2930 - accuracy: 0.9069
Epoch 71/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2735 - accuracy: 0.9104
Epoch 72/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2679 - accuracy: 0.9108
Epoch 73/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2530 - accuracy: 0.9196
Epoch 74/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2477 - accuracy: 0.9176
Epoch 75/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2793 - accuracy: 0.9121
Epoch 76/100
48/48 [==============================] - 1s 12ms/step - loss: 1.2696 - accuracy: 0.7034
Epoch 77/100
48/48 [==============================] - 1s 11ms/step - loss: 0.4423 - accuracy: 0.8596
Epoch 78/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3823 - accuracy: 0.8767
Epoch 79/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3237 - accuracy: 0.8981
Epoch 80/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2781 - accuracy: 0.9144
Epoch 81/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2671 - accuracy: 0.9169
Epoch 82/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2562 - accuracy: 0.9126
Epoch 83/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2568 - accuracy: 0.9169
Epoch 84/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2657 - accuracy: 0.9167
Epoch 85/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2239 - accuracy: 0.9274
Epoch 86/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2381 - accuracy: 0.9244
Epoch 87/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2764 - accuracy: 0.9113
Epoch 88/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2307 - accuracy: 0.9251
Epoch 89/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2023 - accuracy: 0.9342
Epoch 90/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1912 - accuracy: 0.9350
Epoch 91/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3293 - accuracy: 0.8970
Epoch 92/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3678 - accuracy: 0.8882
Epoch 93/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2235 - accuracy: 0.9290
Epoch 94/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2055 - accuracy: 0.9335
Epoch 95/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2115 - accuracy: 0.9344
Epoch 96/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1939 - accuracy: 0.9380
Epoch 97/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2502 - accuracy: 0.9254
Epoch 98/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3010 - accuracy: 0.9020
Epoch 99/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2239 - accuracy: 0.9267
Epoch 100/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1830 - accuracy: 0.9438
24/24 [==============================] - 0s 4ms/step - loss: 2.1995 - accuracy: 0.5249
Epoch 1/100
48/48 [==============================] - 2s 13ms/step - loss: 2.6396 - accuracy: 0.0939
Epoch 2/100
48/48 [==============================] - 1s 12ms/step - loss: 2.5870 - accuracy: 0.1205
Epoch 3/100
48/48 [==============================] - 1s 12ms/step - loss: 2.5169 - accuracy: 0.1337
Epoch 4/100
48/48 [==============================] - 1s 12ms/step - loss: 2.4612 - accuracy: 0.1550
Epoch 5/100
48/48 [==============================] - 1s 12ms/step - loss: 2.3688 - accuracy: 0.1906
Epoch 6/100
48/48 [==============================] - 1s 12ms/step - loss: 2.2349 - accuracy: 0.2600
Epoch 7/100
48/48 [==============================] - 1s 12ms/step - loss: 2.0621 - accuracy: 0.3175
Epoch 8/100
48/48 [==============================] - 1s 12ms/step - loss: 1.9411 - accuracy: 0.3692
Epoch 9/100
48/48 [==============================] - 1s 11ms/step - loss: 2.1356 - accuracy: 0.3461
Epoch 10/100
48/48 [==============================] - 1s 11ms/step - loss: 1.8153 - accuracy: 0.4217
Epoch 11/100
48/48 [==============================] - 1s 11ms/step - loss: 1.7188 - accuracy: 0.4492
Epoch 12/100
48/48 [==============================] - 1s 12ms/step - loss: 1.5729 - accuracy: 0.4959
Epoch 13/100
48/48 [==============================] - 1s 12ms/step - loss: 1.4968 - accuracy: 0.5312
Epoch 14/100
48/48 [==============================] - 1s 12ms/step - loss: 1.7925 - accuracy: 0.4767
Epoch 15/100
48/48 [==============================] - 1s 11ms/step - loss: 1.4559 - accuracy: 0.5491
Epoch 16/100
48/48 [==============================] - 1s 12ms/step - loss: 1.2609 - accuracy: 0.5984
Epoch 17/100
48/48 [==============================] - 1s 12ms/step - loss: 1.1875 - accuracy: 0.6242
Epoch 18/100
48/48 [==============================] - 1s 12ms/step - loss: 1.3411 - accuracy: 0.5797
Epoch 19/100
48/48 [==============================] - 1s 12ms/step - loss: 1.2277 - accuracy: 0.6275
Epoch 20/100
48/48 [==============================] - 1s 12ms/step - loss: 1.0518 - accuracy: 0.6632
Epoch 21/100
48/48 [==============================] - 1s 12ms/step - loss: 1.0292 - accuracy: 0.6729
Epoch 22/100
48/48 [==============================] - 1s 12ms/step - loss: 0.9958 - accuracy: 0.6870
Epoch 23/100
48/48 [==============================] - 1s 12ms/step - loss: 0.8925 - accuracy: 0.7164
Epoch 24/100
48/48 [==============================] - 1s 11ms/step - loss: 0.8492 - accuracy: 0.7257
Epoch 25/100
48/48 [==============================] - 1s 12ms/step - loss: 0.8213 - accuracy: 0.7358
Epoch 26/100
48/48 [==============================] - 1s 12ms/step - loss: 1.0688 - accuracy: 0.6943
Epoch 27/100
48/48 [==============================] - 1s 12ms/step - loss: 0.7482 - accuracy: 0.7568
Epoch 28/100
48/48 [==============================] - 1s 12ms/step - loss: 0.7169 - accuracy: 0.7697
Epoch 29/100
48/48 [==============================] - 1s 12ms/step - loss: 0.9377 - accuracy: 0.7214
Epoch 30/100
48/48 [==============================] - 1s 12ms/step - loss: 0.6718 - accuracy: 0.7852
Epoch 31/100
48/48 [==============================] - 1s 12ms/step - loss: 0.6678 - accuracy: 0.7960
Epoch 32/100
48/48 [==============================] - 1s 12ms/step - loss: 0.6245 - accuracy: 0.7995
Epoch 33/100
48/48 [==============================] - 1s 12ms/step - loss: 0.6111 - accuracy: 0.8025
Epoch 34/100
48/48 [==============================] - 1s 12ms/step - loss: 0.5730 - accuracy: 0.8116
Epoch 35/100
48/48 [==============================] - 1s 12ms/step - loss: 1.7211 - accuracy: 0.6009
Epoch 36/100
48/48 [==============================] - 1s 12ms/step - loss: 0.8159 - accuracy: 0.7490
Epoch 37/100
48/48 [==============================] - 1s 12ms/step - loss: 0.7357 - accuracy: 0.7749
Epoch 38/100
48/48 [==============================] - 1s 12ms/step - loss: 0.6684 - accuracy: 0.7878
Epoch 39/100
48/48 [==============================] - 1s 12ms/step - loss: 0.6404 - accuracy: 0.7991
Epoch 40/100
48/48 [==============================] - 1s 12ms/step - loss: 0.5625 - accuracy: 0.8207
Epoch 41/100
48/48 [==============================] - 1s 12ms/step - loss: 0.5608 - accuracy: 0.8222
Epoch 42/100
48/48 [==============================] - 1s 12ms/step - loss: 0.6261 - accuracy: 0.8103
Epoch 43/100
48/48 [==============================] - 1s 12ms/step - loss: 0.5012 - accuracy: 0.8420
Epoch 44/100
48/48 [==============================] - 1s 12ms/step - loss: 0.5074 - accuracy: 0.8402
Epoch 45/100
48/48 [==============================] - 1s 12ms/step - loss: 0.4659 - accuracy: 0.8490
Epoch 46/100
48/48 [==============================] - 1s 11ms/step - loss: 0.4303 - accuracy: 0.8594
Epoch 47/100
48/48 [==============================] - 1s 12ms/step - loss: 0.6556 - accuracy: 0.8101
Epoch 48/100
48/48 [==============================] - 1s 12ms/step - loss: 0.4206 - accuracy: 0.8636
Epoch 49/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3968 - accuracy: 0.8772
Epoch 50/100
48/48 [==============================] - 1s 12ms/step - loss: 0.4710 - accuracy: 0.8538
Epoch 51/100
48/48 [==============================] - 1s 12ms/step - loss: 0.4094 - accuracy: 0.8676
Epoch 52/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3828 - accuracy: 0.8799
Epoch 53/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3527 - accuracy: 0.8864
Epoch 54/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3363 - accuracy: 0.8915
Epoch 55/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3783 - accuracy: 0.8800
Epoch 56/100
48/48 [==============================] - 1s 12ms/step - loss: 0.4367 - accuracy: 0.8669
Epoch 57/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3266 - accuracy: 0.8912
Epoch 58/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3675 - accuracy: 0.8835
Epoch 59/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3289 - accuracy: 0.8950
Epoch 60/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3059 - accuracy: 0.9018
Epoch 61/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2942 - accuracy: 0.9058
Epoch 62/100
48/48 [==============================] - 1s 12ms/step - loss: 1.2872 - accuracy: 0.7091
Epoch 63/100
48/48 [==============================] - 1s 12ms/step - loss: 0.5554 - accuracy: 0.8350
Epoch 64/100
48/48 [==============================] - 1s 12ms/step - loss: 0.4321 - accuracy: 0.8608
Epoch 65/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3827 - accuracy: 0.8789
Epoch 66/100
48/48 [==============================] - 1s 13ms/step - loss: 0.3532 - accuracy: 0.8875
Epoch 67/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3407 - accuracy: 0.8930
Epoch 68/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3052 - accuracy: 0.9001
Epoch 69/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3375 - accuracy: 0.8915
Epoch 70/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3190 - accuracy: 0.8985
Epoch 71/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2910 - accuracy: 0.9040
Epoch 72/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2795 - accuracy: 0.9095
Epoch 73/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2823 - accuracy: 0.9090
Epoch 74/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2545 - accuracy: 0.9156
Epoch 75/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2371 - accuracy: 0.9244
Epoch 76/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2365 - accuracy: 0.9242
Epoch 77/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2340 - accuracy: 0.9286
Epoch 78/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2307 - accuracy: 0.9306
Epoch 79/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2280 - accuracy: 0.9272
Epoch 80/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2118 - accuracy: 0.9352
Epoch 81/100
48/48 [==============================] - 1s 12ms/step - loss: 0.4004 - accuracy: 0.8867
Epoch 82/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2560 - accuracy: 0.9176
Epoch 83/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2208 - accuracy: 0.9301
Epoch 84/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2065 - accuracy: 0.9322
Epoch 85/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2198 - accuracy: 0.9309
Epoch 86/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2026 - accuracy: 0.9342
Epoch 87/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2115 - accuracy: 0.9301
Epoch 88/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1959 - accuracy: 0.9339
Epoch 89/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1979 - accuracy: 0.9352
Epoch 90/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1955 - accuracy: 0.9360
Epoch 91/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1967 - accuracy: 0.9367
Epoch 92/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1789 - accuracy: 0.9437
Epoch 93/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1952 - accuracy: 0.9402
Epoch 94/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1855 - accuracy: 0.9367
Epoch 95/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1738 - accuracy: 0.9419
Epoch 96/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1948 - accuracy: 0.9409
Epoch 97/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2586 - accuracy: 0.9229
Epoch 98/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1765 - accuracy: 0.9442
Epoch 99/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1701 - accuracy: 0.9423
Epoch 100/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1763 - accuracy: 0.9468
24/24 [==============================] - 0s 4ms/step - loss: 0.2828 - accuracy: 0.9169
Epoch 1/100
48/48 [==============================] - 2s 11ms/step - loss: 2.6455 - accuracy: 0.0905
Epoch 2/100
48/48 [==============================] - 1s 12ms/step - loss: 2.5666 - accuracy: 0.1246
Epoch 3/100
48/48 [==============================] - 1s 12ms/step - loss: 2.5199 - accuracy: 0.1377
Epoch 4/100
48/48 [==============================] - 1s 12ms/step - loss: 2.4204 - accuracy: 0.1726
Epoch 5/100
48/48 [==============================] - 1s 12ms/step - loss: 2.2725 - accuracy: 0.2401
Epoch 6/100
48/48 [==============================] - 1s 12ms/step - loss: 2.1212 - accuracy: 0.3037
Epoch 7/100
48/48 [==============================] - 1s 12ms/step - loss: 2.0708 - accuracy: 0.3255
Epoch 8/100
48/48 [==============================] - 1s 12ms/step - loss: 1.8957 - accuracy: 0.3785
Epoch 9/100
48/48 [==============================] - 1s 12ms/step - loss: 1.8460 - accuracy: 0.4080
Epoch 10/100
48/48 [==============================] - 1s 12ms/step - loss: 1.7082 - accuracy: 0.4487
Epoch 11/100
48/48 [==============================] - 1s 12ms/step - loss: 1.6120 - accuracy: 0.4782
Epoch 12/100
48/48 [==============================] - 1s 11ms/step - loss: 1.6234 - accuracy: 0.4919
Epoch 13/100
48/48 [==============================] - 1s 12ms/step - loss: 1.4051 - accuracy: 0.5534
Epoch 14/100
48/48 [==============================] - 1s 12ms/step - loss: 1.7425 - accuracy: 0.4717
Epoch 15/100
48/48 [==============================] - 1s 12ms/step - loss: 1.4724 - accuracy: 0.5489
Epoch 16/100
48/48 [==============================] - 1s 11ms/step - loss: 1.2346 - accuracy: 0.6018
Epoch 17/100
48/48 [==============================] - 1s 12ms/step - loss: 1.1938 - accuracy: 0.6254
Epoch 18/100
48/48 [==============================] - 1s 12ms/step - loss: 1.1802 - accuracy: 0.6300
Epoch 19/100
48/48 [==============================] - 1s 12ms/step - loss: 1.0184 - accuracy: 0.6740
Epoch 20/100
48/48 [==============================] - 1s 12ms/step - loss: 0.9659 - accuracy: 0.6906
Epoch 21/100
48/48 [==============================] - 1s 13ms/step - loss: 1.0943 - accuracy: 0.6694
Epoch 22/100
48/48 [==============================] - 1s 12ms/step - loss: 0.8673 - accuracy: 0.7215
Epoch 23/100
48/48 [==============================] - 1s 12ms/step - loss: 0.8269 - accuracy: 0.7328
Epoch 24/100
48/48 [==============================] - 1s 12ms/step - loss: 0.8200 - accuracy: 0.7395
Epoch 25/100
48/48 [==============================] - 1s 12ms/step - loss: 0.7948 - accuracy: 0.7445
Epoch 26/100
48/48 [==============================] - 1s 12ms/step - loss: 0.7140 - accuracy: 0.7757
Epoch 27/100
48/48 [==============================] - 1s 12ms/step - loss: 0.7359 - accuracy: 0.7742
Epoch 28/100
48/48 [==============================] - 1s 12ms/step - loss: 0.6606 - accuracy: 0.7897
Epoch 29/100
48/48 [==============================] - 1s 12ms/step - loss: 0.6486 - accuracy: 0.7937
Epoch 30/100
48/48 [==============================] - 1s 12ms/step - loss: 0.6390 - accuracy: 0.7937
Epoch 31/100
48/48 [==============================] - 1s 12ms/step - loss: 0.5726 - accuracy: 0.8162
Epoch 32/100
48/48 [==============================] - 1s 12ms/step - loss: 0.5601 - accuracy: 0.8217
Epoch 33/100
48/48 [==============================] - 1s 12ms/step - loss: 0.5634 - accuracy: 0.8182
Epoch 34/100
48/48 [==============================] - 1s 12ms/step - loss: 1.0220 - accuracy: 0.7074
Epoch 35/100
48/48 [==============================] - 1s 12ms/step - loss: 0.6362 - accuracy: 0.8001
Epoch 36/100
48/48 [==============================] - 1s 12ms/step - loss: 0.5609 - accuracy: 0.8224
Epoch 37/100
48/48 [==============================] - 1s 12ms/step - loss: 0.5292 - accuracy: 0.8395
Epoch 38/100
48/48 [==============================] - 1s 12ms/step - loss: 0.4608 - accuracy: 0.8530
Epoch 39/100
48/48 [==============================] - 1s 12ms/step - loss: 0.4546 - accuracy: 0.8513
Epoch 40/100
48/48 [==============================] - 1s 12ms/step - loss: 0.4265 - accuracy: 0.8633
Epoch 41/100
48/48 [==============================] - 1s 12ms/step - loss: 0.4317 - accuracy: 0.8608
Epoch 42/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3883 - accuracy: 0.8752
Epoch 43/100
48/48 [==============================] - 1s 11ms/step - loss: 0.4904 - accuracy: 0.8530
Epoch 44/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3886 - accuracy: 0.8742
Epoch 45/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3361 - accuracy: 0.8895
Epoch 46/100
48/48 [==============================] - 1s 12ms/step - loss: 0.4010 - accuracy: 0.8719
Epoch 47/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3537 - accuracy: 0.8867
Epoch 48/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3287 - accuracy: 0.8975
Epoch 49/100
48/48 [==============================] - 1s 11ms/step - loss: 0.3301 - accuracy: 0.8928
Epoch 50/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3009 - accuracy: 0.9031
Epoch 51/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3053 - accuracy: 0.9016
Epoch 52/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3309 - accuracy: 0.8947
Epoch 53/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2920 - accuracy: 0.9030
Epoch 54/100
48/48 [==============================] - 1s 12ms/step - loss: 0.3049 - accuracy: 0.9045
Epoch 55/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2744 - accuracy: 0.9098
Epoch 56/100
48/48 [==============================] - 1s 11ms/step - loss: 0.2620 - accuracy: 0.9153
Epoch 57/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2535 - accuracy: 0.9204
Epoch 58/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2751 - accuracy: 0.9103
Epoch 59/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2433 - accuracy: 0.9234
Epoch 60/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2507 - accuracy: 0.9211
Epoch 61/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2450 - accuracy: 0.9199
Epoch 62/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2382 - accuracy: 0.9229
Epoch 63/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2340 - accuracy: 0.9261
Epoch 64/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2168 - accuracy: 0.9317
Epoch 65/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2147 - accuracy: 0.9282
Epoch 66/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2229 - accuracy: 0.9257
Epoch 67/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1996 - accuracy: 0.9352
Epoch 68/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2376 - accuracy: 0.9234
Epoch 69/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2118 - accuracy: 0.9324
Epoch 70/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2076 - accuracy: 0.9324
Epoch 71/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1944 - accuracy: 0.9397
Epoch 72/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1996 - accuracy: 0.9367
Epoch 73/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1854 - accuracy: 0.9415
Epoch 74/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1726 - accuracy: 0.9440
Epoch 75/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2730 - accuracy: 0.9231
Epoch 76/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1853 - accuracy: 0.9415
Epoch 77/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1687 - accuracy: 0.9445
Epoch 78/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2082 - accuracy: 0.9370
Epoch 79/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1759 - accuracy: 0.9435
Epoch 80/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2552 - accuracy: 0.9234
Epoch 81/100
48/48 [==============================] - 1s 11ms/step - loss: 0.6185 - accuracy: 0.8442
Epoch 82/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2407 - accuracy: 0.9279
Epoch 83/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1970 - accuracy: 0.9349
Epoch 84/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1822 - accuracy: 0.9422
Epoch 85/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2812 - accuracy: 0.9141
Epoch 86/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1743 - accuracy: 0.9457
Epoch 87/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1547 - accuracy: 0.9533
Epoch 88/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1601 - accuracy: 0.9493
Epoch 89/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1667 - accuracy: 0.9447
Epoch 90/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1407 - accuracy: 0.9550
Epoch 91/100
48/48 [==============================] - 1s 12ms/step - loss: 0.4129 - accuracy: 0.8884
Epoch 92/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1751 - accuracy: 0.9453
Epoch 93/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1616 - accuracy: 0.9493
Epoch 94/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1580 - accuracy: 0.9475
Epoch 95/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1477 - accuracy: 0.9541
Epoch 96/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1626 - accuracy: 0.9463
Epoch 97/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1463 - accuracy: 0.9545
Epoch 98/100
48/48 [==============================] - 1s 12ms/step - loss: 0.1281 - accuracy: 0.9575
Epoch 99/100
48/48 [==============================] - 1s 12ms/step - loss: 0.2030 - accuracy: 0.9407
Epoch 100/100
48/48 [==============================] - 1s 11ms/step - loss: 0.1461 - accuracy: 0.9541
24/24 [==============================] - 0s 4ms/step - loss: 0.2891 - accuracy: 0.9259
Epoch 1/100
71/71 [==============================] - 1s 10ms/step - loss: 2.6214 - accuracy: 0.1061
Epoch 2/100
71/71 [==============================] - 1s 10ms/step - loss: 2.5208 - accuracy: 0.1368
Epoch 3/100
71/71 [==============================] - 1s 10ms/step - loss: 2.4061 - accuracy: 0.1887
Epoch 4/100
71/71 [==============================] - 1s 10ms/step - loss: 2.2031 - accuracy: 0.2713
Epoch 5/100
71/71 [==============================] - 1s 10ms/step - loss: 2.0347 - accuracy: 0.3340
Epoch 6/100
71/71 [==============================] - 1s 10ms/step - loss: 1.9135 - accuracy: 0.3768
Epoch 7/100
71/71 [==============================] - 1s 10ms/step - loss: 1.7657 - accuracy: 0.4229
Epoch 8/100
71/71 [==============================] - 1s 10ms/step - loss: 1.6499 - accuracy: 0.4716
Epoch 9/100
71/71 [==============================] - 1s 10ms/step - loss: 1.5495 - accuracy: 0.5070
Epoch 10/100
71/71 [==============================] - 1s 11ms/step - loss: 1.4224 - accuracy: 0.5492
Epoch 11/100
71/71 [==============================] - 1s 10ms/step - loss: 1.3245 - accuracy: 0.5722
Epoch 12/100
71/71 [==============================] - 1s 10ms/step - loss: 1.2332 - accuracy: 0.6066
Epoch 13/100
71/71 [==============================] - 1s 11ms/step - loss: 1.1688 - accuracy: 0.6330
Epoch 14/100
71/71 [==============================] - 1s 10ms/step - loss: 1.0653 - accuracy: 0.6656
Epoch 15/100
71/71 [==============================] - 1s 11ms/step - loss: 1.0163 - accuracy: 0.6821
Epoch 16/100
71/71 [==============================] - 1s 10ms/step - loss: 0.9446 - accuracy: 0.6982
Epoch 17/100
71/71 [==============================] - 1s 10ms/step - loss: 0.9108 - accuracy: 0.7095
Epoch 18/100
71/71 [==============================] - 1s 10ms/step - loss: 0.8536 - accuracy: 0.7317
Epoch 19/100
71/71 [==============================] - 1s 10ms/step - loss: 0.8283 - accuracy: 0.7342
Epoch 20/100
71/71 [==============================] - 1s 10ms/step - loss: 0.7546 - accuracy: 0.7631
Epoch 21/100
71/71 [==============================] - 1s 10ms/step - loss: 0.7089 - accuracy: 0.7781
Epoch 22/100
71/71 [==============================] - 1s 11ms/step - loss: 0.6860 - accuracy: 0.7864
Epoch 23/100
71/71 [==============================] - 1s 10ms/step - loss: 0.6473 - accuracy: 0.7992
Epoch 24/100
71/71 [==============================] - 1s 10ms/step - loss: 0.6393 - accuracy: 0.7984
Epoch 25/100
71/71 [==============================] - 1s 11ms/step - loss: 0.5789 - accuracy: 0.8159
Epoch 26/100
71/71 [==============================] - 1s 10ms/step - loss: 0.5769 - accuracy: 0.8226
Epoch 27/100
71/71 [==============================] - 1s 10ms/step - loss: 0.5664 - accuracy: 0.8268
Epoch 28/100
71/71 [==============================] - 1s 10ms/step - loss: 0.5157 - accuracy: 0.8384
Epoch 29/100
71/71 [==============================] - 1s 10ms/step - loss: 0.5198 - accuracy: 0.8414
Epoch 30/100
71/71 [==============================] - 1s 10ms/step - loss: 0.4840 - accuracy: 0.8465
Epoch 31/100
71/71 [==============================] - 1s 11ms/step - loss: 0.4675 - accuracy: 0.8546
Epoch 32/100
71/71 [==============================] - 1s 10ms/step - loss: 0.4524 - accuracy: 0.8634
Epoch 33/100
71/71 [==============================] - 1s 11ms/step - loss: 0.4441 - accuracy: 0.8614
Epoch 34/100
71/71 [==============================] - 1s 10ms/step - loss: 0.4289 - accuracy: 0.8656
Epoch 35/100
71/71 [==============================] - 1s 10ms/step - loss: 0.4299 - accuracy: 0.8705
Epoch 36/100
71/71 [==============================] - 1s 11ms/step - loss: 0.3941 - accuracy: 0.8828
Epoch 37/100
71/71 [==============================] - 1s 10ms/step - loss: 0.3901 - accuracy: 0.8780
Epoch 38/100
71/71 [==============================] - 1s 10ms/step - loss: 0.3709 - accuracy: 0.8856
Epoch 39/100
71/71 [==============================] - 1s 10ms/step - loss: 0.3579 - accuracy: 0.8849
Epoch 40/100
71/71 [==============================] - 1s 11ms/step - loss: 0.3607 - accuracy: 0.8931
Epoch 41/100
71/71 [==============================] - 1s 10ms/step - loss: 0.3634 - accuracy: 0.8891
Epoch 42/100
71/71 [==============================] - 1s 10ms/step - loss: 0.3276 - accuracy: 0.8979
Epoch 43/100
71/71 [==============================] - 1s 10ms/step - loss: 0.3400 - accuracy: 0.8967
Epoch 44/100
71/71 [==============================] - 1s 10ms/step - loss: 0.3294 - accuracy: 0.8972
Epoch 45/100
71/71 [==============================] - 1s 11ms/step - loss: 0.3296 - accuracy: 0.8996
Epoch 46/100
71/71 [==============================] - 1s 10ms/step - loss: 0.3204 - accuracy: 0.8992
Epoch 47/100
71/71 [==============================] - 1s 11ms/step - loss: 0.3234 - accuracy: 0.9021
Epoch 48/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2950 - accuracy: 0.9066
Epoch 49/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2784 - accuracy: 0.9149
Epoch 50/100
71/71 [==============================] - 1s 10ms/step - loss: 0.3120 - accuracy: 0.9044
Epoch 51/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2876 - accuracy: 0.9128
Epoch 52/100
71/71 [==============================] - 1s 10ms/step - loss: 0.3013 - accuracy: 0.9109
Epoch 53/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2843 - accuracy: 0.9103
Epoch 54/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2839 - accuracy: 0.9157
Epoch 55/100
71/71 [==============================] - 1s 11ms/step - loss: 0.2729 - accuracy: 0.9149
Epoch 56/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2696 - accuracy: 0.9179
Epoch 57/100
71/71 [==============================] - 1s 11ms/step - loss: 0.2745 - accuracy: 0.9174
Epoch 58/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2635 - accuracy: 0.9230
Epoch 59/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2476 - accuracy: 0.9248
Epoch 60/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2576 - accuracy: 0.9245
Epoch 61/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2694 - accuracy: 0.9198
Epoch 62/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2495 - accuracy: 0.9273
Epoch 63/100
71/71 [==============================] - 1s 11ms/step - loss: 0.2554 - accuracy: 0.9231
Epoch 64/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2507 - accuracy: 0.9258
Epoch 65/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2336 - accuracy: 0.9283
Epoch 66/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2570 - accuracy: 0.9241
Epoch 67/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2475 - accuracy: 0.9255
Epoch 68/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2535 - accuracy: 0.9281
Epoch 69/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2408 - accuracy: 0.9282
Epoch 70/100
71/71 [==============================] - 1s 11ms/step - loss: 0.2310 - accuracy: 0.9319
Epoch 71/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2262 - accuracy: 0.9345
Epoch 72/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2336 - accuracy: 0.9361
Epoch 73/100
71/71 [==============================] - 1s 11ms/step - loss: 0.2355 - accuracy: 0.9314
Epoch 74/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2353 - accuracy: 0.9304
Epoch 75/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2314 - accuracy: 0.9348
Epoch 76/100
71/71 [==============================] - 1s 11ms/step - loss: 0.2388 - accuracy: 0.9305
Epoch 77/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2374 - accuracy: 0.9334
Epoch 78/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2207 - accuracy: 0.9340
Epoch 79/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2326 - accuracy: 0.9339
Epoch 80/100
71/71 [==============================] - 1s 11ms/step - loss: 0.2295 - accuracy: 0.9352
Epoch 81/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2279 - accuracy: 0.9364
Epoch 82/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2363 - accuracy: 0.9353
Epoch 83/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2414 - accuracy: 0.9345
Epoch 84/100
71/71 [==============================] - 1s 11ms/step - loss: 0.2217 - accuracy: 0.9375
Epoch 85/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2240 - accuracy: 0.9369
Epoch 86/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2270 - accuracy: 0.9353
Epoch 87/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2057 - accuracy: 0.9424
Epoch 88/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2212 - accuracy: 0.9372
Epoch 89/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2234 - accuracy: 0.9383
Epoch 90/100
71/71 [==============================] - 1s 11ms/step - loss: 0.2248 - accuracy: 0.9369
Epoch 91/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2167 - accuracy: 0.9386
Epoch 92/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2026 - accuracy: 0.9437
Epoch 93/100
71/71 [==============================] - 1s 11ms/step - loss: 0.2335 - accuracy: 0.9356
Epoch 94/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2047 - accuracy: 0.9407
Epoch 95/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2131 - accuracy: 0.9365
Epoch 96/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2187 - accuracy: 0.9426
Epoch 97/100
71/71 [==============================] - 1s 11ms/step - loss: 0.2268 - accuracy: 0.9392
Epoch 98/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2384 - accuracy: 0.9395
Epoch 99/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2296 - accuracy: 0.9389
Epoch 100/100
71/71 [==============================] - 1s 10ms/step - loss: 0.2164 - accuracy: 0.9411
Best Score: 0.9079536199569702 Best Params: {'optimizer': 'rmsprop', 'dropout': 0.4}
from tensorflow.keras.callbacks import LearningRateScheduler
def scheduleLR(epoch,lr):
if epoch<10:
return lr
else:
return lr*tf.math.exp(-0.1)
model = Sequential()
model.add(Conv2D(64, (3, 3), activation='relu',input_shape=(31,31,1)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.4))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.4))
model.add(Conv2D(256, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.4))
model.add(Flatten())
model.add(Dense(512, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='rmsprop', metrics=['accuracy'])
history = model.fit(X_train,y_train, validation_data=(X_val,y_val),epochs=100, batch_size=128)
scores = model.evaluate(X_test,y_test)
print("CNN Error: %.2f%%" % (100-scores[1]*100))
plotAUC(history)
Epoch 1/100 71/71 [==============================] - 2s 15ms/step - loss: 2.6241 - accuracy: 0.1059 - val_loss: 2.6571 - val_accuracy: 0.0927 Epoch 2/100 71/71 [==============================] - 1s 11ms/step - loss: 2.5163 - accuracy: 0.1515 - val_loss: 2.5149 - val_accuracy: 0.1707 Epoch 3/100 71/71 [==============================] - 1s 11ms/step - loss: 2.3860 - accuracy: 0.2100 - val_loss: 2.3884 - val_accuracy: 0.2620 Epoch 4/100 71/71 [==============================] - 1s 11ms/step - loss: 2.2219 - accuracy: 0.2633 - val_loss: 2.1408 - val_accuracy: 0.3400 Epoch 5/100 71/71 [==============================] - 1s 12ms/step - loss: 2.0637 - accuracy: 0.3247 - val_loss: 1.9774 - val_accuracy: 0.4063 Epoch 6/100 71/71 [==============================] - 1s 11ms/step - loss: 1.9182 - accuracy: 0.3787 - val_loss: 1.9229 - val_accuracy: 0.3747 Epoch 7/100 71/71 [==============================] - 1s 12ms/step - loss: 1.7745 - accuracy: 0.4339 - val_loss: 2.1766 - val_accuracy: 0.3387 Epoch 8/100 71/71 [==============================] - 1s 11ms/step - loss: 1.6803 - accuracy: 0.4662 - val_loss: 1.5834 - val_accuracy: 0.4840 Epoch 9/100 71/71 [==============================] - 1s 11ms/step - loss: 1.5315 - accuracy: 0.5045 - val_loss: 1.4166 - val_accuracy: 0.5297 Epoch 10/100 71/71 [==============================] - 1s 11ms/step - loss: 1.4279 - accuracy: 0.5449 - val_loss: 1.2789 - val_accuracy: 0.5990 Epoch 11/100 71/71 [==============================] - 1s 11ms/step - loss: 1.3564 - accuracy: 0.5650 - val_loss: 1.4045 - val_accuracy: 0.5553 Epoch 12/100 71/71 [==============================] - 1s 11ms/step - loss: 1.2547 - accuracy: 0.6030 - val_loss: 1.1063 - val_accuracy: 0.6643 Epoch 13/100 71/71 [==============================] - 1s 11ms/step - loss: 1.1522 - accuracy: 0.6357 - val_loss: 1.1159 - val_accuracy: 0.6437 Epoch 14/100 71/71 [==============================] - 1s 12ms/step - loss: 1.0820 - accuracy: 0.6565 - val_loss: 1.1382 - val_accuracy: 0.6203 Epoch 15/100 71/71 [==============================] - 1s 11ms/step - loss: 0.9922 - accuracy: 0.6860 - val_loss: 0.8624 - val_accuracy: 0.7310 Epoch 16/100 71/71 [==============================] - 1s 11ms/step - loss: 0.9519 - accuracy: 0.7024 - val_loss: 1.0454 - val_accuracy: 0.6743 Epoch 17/100 71/71 [==============================] - 1s 11ms/step - loss: 0.9029 - accuracy: 0.7157 - val_loss: 0.7797 - val_accuracy: 0.7517 Epoch 18/100 71/71 [==============================] - 1s 11ms/step - loss: 0.8479 - accuracy: 0.7308 - val_loss: 0.6955 - val_accuracy: 0.7883 Epoch 19/100 71/71 [==============================] - 1s 11ms/step - loss: 0.7945 - accuracy: 0.7479 - val_loss: 0.6520 - val_accuracy: 0.7977 Epoch 20/100 71/71 [==============================] - 1s 11ms/step - loss: 0.7500 - accuracy: 0.7576 - val_loss: 0.6024 - val_accuracy: 0.8067 Epoch 21/100 71/71 [==============================] - 1s 11ms/step - loss: 0.7021 - accuracy: 0.7706 - val_loss: 0.5350 - val_accuracy: 0.8340 Epoch 22/100 71/71 [==============================] - 1s 11ms/step - loss: 0.6644 - accuracy: 0.7844 - val_loss: 0.6842 - val_accuracy: 0.7897 Epoch 23/100 71/71 [==============================] - 1s 11ms/step - loss: 0.6297 - accuracy: 0.8032 - val_loss: 0.6426 - val_accuracy: 0.7990 Epoch 24/100 71/71 [==============================] - 1s 11ms/step - loss: 0.6252 - accuracy: 0.8005 - val_loss: 0.4619 - val_accuracy: 0.8593 Epoch 25/100 71/71 [==============================] - 1s 11ms/step - loss: 0.5762 - accuracy: 0.8166 - val_loss: 0.4917 - val_accuracy: 0.8553 Epoch 26/100 71/71 [==============================] - 1s 11ms/step - loss: 0.5682 - accuracy: 0.8197 - val_loss: 0.4468 - val_accuracy: 0.8610 Epoch 27/100 71/71 [==============================] - 1s 11ms/step - loss: 0.5291 - accuracy: 0.8330 - val_loss: 0.6750 - val_accuracy: 0.7857 Epoch 28/100 71/71 [==============================] - 1s 11ms/step - loss: 0.5172 - accuracy: 0.8351 - val_loss: 0.4642 - val_accuracy: 0.8597 Epoch 29/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4929 - accuracy: 0.8435 - val_loss: 0.6602 - val_accuracy: 0.7957 Epoch 30/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4742 - accuracy: 0.8510 - val_loss: 0.3945 - val_accuracy: 0.8830 Epoch 31/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4577 - accuracy: 0.8586 - val_loss: 0.3962 - val_accuracy: 0.8823 Epoch 32/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4471 - accuracy: 0.8610 - val_loss: 0.4067 - val_accuracy: 0.8790 Epoch 33/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4335 - accuracy: 0.8663 - val_loss: 0.4904 - val_accuracy: 0.8537 Epoch 34/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4112 - accuracy: 0.8742 - val_loss: 0.3680 - val_accuracy: 0.8870 Epoch 35/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4241 - accuracy: 0.8628 - val_loss: 0.3373 - val_accuracy: 0.8983 Epoch 36/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4015 - accuracy: 0.8752 - val_loss: 0.3283 - val_accuracy: 0.9050 Epoch 37/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3919 - accuracy: 0.8777 - val_loss: 0.4270 - val_accuracy: 0.8807 Epoch 38/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3894 - accuracy: 0.8807 - val_loss: 0.3205 - val_accuracy: 0.9040 Epoch 39/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3765 - accuracy: 0.8868 - val_loss: 0.3160 - val_accuracy: 0.9080 Epoch 40/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3600 - accuracy: 0.8906 - val_loss: 0.3397 - val_accuracy: 0.9030 Epoch 41/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3648 - accuracy: 0.8868 - val_loss: 0.3744 - val_accuracy: 0.8953 Epoch 42/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3444 - accuracy: 0.8942 - val_loss: 0.3232 - val_accuracy: 0.9060 Epoch 43/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3266 - accuracy: 0.8992 - val_loss: 0.3282 - val_accuracy: 0.9130 Epoch 44/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3264 - accuracy: 0.8984 - val_loss: 0.2690 - val_accuracy: 0.9220 Epoch 45/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3204 - accuracy: 0.9019 - val_loss: 0.2603 - val_accuracy: 0.9253 Epoch 46/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3192 - accuracy: 0.9040 - val_loss: 0.2972 - val_accuracy: 0.9143 Epoch 47/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2898 - accuracy: 0.9107 - val_loss: 0.3448 - val_accuracy: 0.8977 Epoch 48/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3147 - accuracy: 0.9027 - val_loss: 0.3264 - val_accuracy: 0.9057 Epoch 49/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3005 - accuracy: 0.9081 - val_loss: 0.3129 - val_accuracy: 0.9053 Epoch 50/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3055 - accuracy: 0.9072 - val_loss: 0.2823 - val_accuracy: 0.9180 Epoch 51/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2881 - accuracy: 0.9089 - val_loss: 0.2840 - val_accuracy: 0.9177 Epoch 52/100 71/71 [==============================] - 1s 12ms/step - loss: 0.2817 - accuracy: 0.9140 - val_loss: 0.3198 - val_accuracy: 0.9107 Epoch 53/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2833 - accuracy: 0.9147 - val_loss: 0.2414 - val_accuracy: 0.9343 Epoch 54/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2904 - accuracy: 0.9152 - val_loss: 0.3353 - val_accuracy: 0.9037 Epoch 55/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2621 - accuracy: 0.9187 - val_loss: 0.4295 - val_accuracy: 0.8707 Epoch 56/100 71/71 [==============================] - 1s 12ms/step - loss: 0.2624 - accuracy: 0.9215 - val_loss: 0.3019 - val_accuracy: 0.9157 Epoch 57/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2911 - accuracy: 0.9161 - val_loss: 0.2691 - val_accuracy: 0.9233 Epoch 58/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2703 - accuracy: 0.9204 - val_loss: 0.3901 - val_accuracy: 0.8870 Epoch 59/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2694 - accuracy: 0.9181 - val_loss: 0.2285 - val_accuracy: 0.9370 Epoch 60/100 71/71 [==============================] - 1s 12ms/step - loss: 0.2529 - accuracy: 0.9258 - val_loss: 0.2478 - val_accuracy: 0.9297 Epoch 61/100 71/71 [==============================] - 1s 12ms/step - loss: 0.2517 - accuracy: 0.9249 - val_loss: 0.2583 - val_accuracy: 0.9277 Epoch 62/100 71/71 [==============================] - 1s 12ms/step - loss: 0.2497 - accuracy: 0.9256 - val_loss: 0.2917 - val_accuracy: 0.9217 Epoch 63/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2520 - accuracy: 0.9246 - val_loss: 0.2676 - val_accuracy: 0.9257 Epoch 64/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2483 - accuracy: 0.9262 - val_loss: 0.3530 - val_accuracy: 0.8960 Epoch 65/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2585 - accuracy: 0.9242 - val_loss: 0.2612 - val_accuracy: 0.9287 Epoch 66/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2348 - accuracy: 0.9318 - val_loss: 0.2999 - val_accuracy: 0.9137 Epoch 67/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2378 - accuracy: 0.9273 - val_loss: 0.2324 - val_accuracy: 0.9370 Epoch 68/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2644 - accuracy: 0.9222 - val_loss: 0.2204 - val_accuracy: 0.9420 Epoch 69/100 71/71 [==============================] - 1s 12ms/step - loss: 0.2215 - accuracy: 0.9341 - val_loss: 0.3224 - val_accuracy: 0.9093 Epoch 70/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2438 - accuracy: 0.9289 - val_loss: 0.3222 - val_accuracy: 0.9117 Epoch 71/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2329 - accuracy: 0.9323 - val_loss: 0.2748 - val_accuracy: 0.9253 Epoch 72/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2438 - accuracy: 0.9301 - val_loss: 0.2455 - val_accuracy: 0.9350 Epoch 73/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2171 - accuracy: 0.9360 - val_loss: 0.2600 - val_accuracy: 0.9320 Epoch 74/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2345 - accuracy: 0.9334 - val_loss: 0.3482 - val_accuracy: 0.9110 Epoch 75/100 71/71 [==============================] - 1s 12ms/step - loss: 0.2252 - accuracy: 0.9343 - val_loss: 0.2433 - val_accuracy: 0.9367 Epoch 76/100 71/71 [==============================] - 1s 12ms/step - loss: 0.2345 - accuracy: 0.9348 - val_loss: 0.2371 - val_accuracy: 0.9373 Epoch 77/100 71/71 [==============================] - 1s 12ms/step - loss: 0.2392 - accuracy: 0.9322 - val_loss: 0.3156 - val_accuracy: 0.9090 Epoch 78/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2278 - accuracy: 0.9341 - val_loss: 0.2605 - val_accuracy: 0.9370 Epoch 79/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2269 - accuracy: 0.9329 - val_loss: 0.2423 - val_accuracy: 0.9327 Epoch 80/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2214 - accuracy: 0.9362 - val_loss: 0.2937 - val_accuracy: 0.9240 Epoch 81/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2302 - accuracy: 0.9363 - val_loss: 0.3498 - val_accuracy: 0.9087 Epoch 82/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2166 - accuracy: 0.9376 - val_loss: 0.2317 - val_accuracy: 0.9413 Epoch 83/100 71/71 [==============================] - 1s 12ms/step - loss: 0.2374 - accuracy: 0.9338 - val_loss: 0.2526 - val_accuracy: 0.9323 Epoch 84/100 71/71 [==============================] - 1s 12ms/step - loss: 0.2188 - accuracy: 0.9386 - val_loss: 0.2542 - val_accuracy: 0.9347 Epoch 85/100 71/71 [==============================] - 1s 12ms/step - loss: 0.2091 - accuracy: 0.9426 - val_loss: 0.2494 - val_accuracy: 0.9327 Epoch 86/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2257 - accuracy: 0.9390 - val_loss: 0.2584 - val_accuracy: 0.9343 Epoch 87/100 71/71 [==============================] - 1s 12ms/step - loss: 0.2141 - accuracy: 0.9373 - val_loss: 0.2611 - val_accuracy: 0.9343 Epoch 88/100 71/71 [==============================] - 1s 12ms/step - loss: 0.2183 - accuracy: 0.9343 - val_loss: 0.2677 - val_accuracy: 0.9287 Epoch 89/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2377 - accuracy: 0.9325 - val_loss: 0.2255 - val_accuracy: 0.9370 Epoch 90/100 71/71 [==============================] - 1s 12ms/step - loss: 0.1996 - accuracy: 0.9415 - val_loss: 0.2220 - val_accuracy: 0.9430 Epoch 91/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2231 - accuracy: 0.9379 - val_loss: 0.2990 - val_accuracy: 0.9260 Epoch 92/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2203 - accuracy: 0.9393 - val_loss: 0.2556 - val_accuracy: 0.9337 Epoch 93/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2416 - accuracy: 0.9332 - val_loss: 0.2525 - val_accuracy: 0.9377 Epoch 94/100 71/71 [==============================] - 1s 12ms/step - loss: 0.2077 - accuracy: 0.9405 - val_loss: 0.2463 - val_accuracy: 0.9367 Epoch 95/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2307 - accuracy: 0.9377 - val_loss: 0.2910 - val_accuracy: 0.9220 Epoch 96/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2344 - accuracy: 0.9351 - val_loss: 0.3105 - val_accuracy: 0.9203 Epoch 97/100 71/71 [==============================] - 1s 12ms/step - loss: 0.2109 - accuracy: 0.9441 - val_loss: 0.3500 - val_accuracy: 0.9080 Epoch 98/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2064 - accuracy: 0.9445 - val_loss: 0.2210 - val_accuracy: 0.9470 Epoch 99/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2256 - accuracy: 0.9394 - val_loss: 0.3512 - val_accuracy: 0.9073 Epoch 100/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2222 - accuracy: 0.9383 - val_loss: 0.2472 - val_accuracy: 0.9410 94/94 [==============================] - 0s 3ms/step - loss: 0.2234 - accuracy: 0.9417 CNN Error: 5.83%
from tensorflow.keras.callbacks import LearningRateScheduler
def scheduleLR(epoch,lr):
if epoch<70:
return lr
else:
return lr*tf.math.exp(-0.1)
model = Sequential()
model.add(Conv2D(64, (3, 3), activation='relu',input_shape=(31,31,1)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.4))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.4))
model.add(Conv2D(256, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.4))
model.add(Flatten())
model.add(Dense(512, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='rmsprop', metrics=['accuracy'])
callback = LearningRateScheduler(scheduleLR)
history = model.fit(X_train,y_train, validation_data=(X_val,y_val),epochs=100, batch_size=128,callbacks=[callback])
scores = model.evaluate(X_test,y_test)
print("CNN Error: %.2f%%" % (100-scores[1]*100))
plotAUC(history)
Epoch 1/100 71/71 [==============================] - 2s 14ms/step - loss: 2.6045 - accuracy: 0.1113 - val_loss: 2.6247 - val_accuracy: 0.1013 - lr: 0.0010 Epoch 2/100 71/71 [==============================] - 1s 11ms/step - loss: 2.4992 - accuracy: 0.1512 - val_loss: 2.5132 - val_accuracy: 0.1323 - lr: 0.0010 Epoch 3/100 71/71 [==============================] - 1s 12ms/step - loss: 2.3191 - accuracy: 0.2225 - val_loss: 2.2169 - val_accuracy: 0.2767 - lr: 0.0010 Epoch 4/100 71/71 [==============================] - 1s 11ms/step - loss: 2.1596 - accuracy: 0.2901 - val_loss: 2.1900 - val_accuracy: 0.2933 - lr: 0.0010 Epoch 5/100 71/71 [==============================] - 1s 11ms/step - loss: 2.0032 - accuracy: 0.3463 - val_loss: 2.1145 - val_accuracy: 0.2950 - lr: 0.0010 Epoch 6/100 71/71 [==============================] - 1s 11ms/step - loss: 1.8761 - accuracy: 0.3930 - val_loss: 1.8616 - val_accuracy: 0.3853 - lr: 0.0010 Epoch 7/100 71/71 [==============================] - 1s 11ms/step - loss: 1.7578 - accuracy: 0.4317 - val_loss: 1.8727 - val_accuracy: 0.4023 - lr: 0.0010 Epoch 8/100 71/71 [==============================] - 1s 11ms/step - loss: 1.6465 - accuracy: 0.4682 - val_loss: 1.4581 - val_accuracy: 0.5520 - lr: 0.0010 Epoch 9/100 71/71 [==============================] - 1s 12ms/step - loss: 1.5328 - accuracy: 0.5066 - val_loss: 1.4393 - val_accuracy: 0.5493 - lr: 0.0010 Epoch 10/100 71/71 [==============================] - 1s 11ms/step - loss: 1.4232 - accuracy: 0.5424 - val_loss: 1.2501 - val_accuracy: 0.6053 - lr: 0.0010 Epoch 11/100 71/71 [==============================] - 1s 11ms/step - loss: 1.3282 - accuracy: 0.5763 - val_loss: 1.2882 - val_accuracy: 0.5877 - lr: 0.0010 Epoch 12/100 71/71 [==============================] - 1s 11ms/step - loss: 1.2344 - accuracy: 0.6062 - val_loss: 1.0507 - val_accuracy: 0.6597 - lr: 0.0010 Epoch 13/100 71/71 [==============================] - 1s 11ms/step - loss: 1.1627 - accuracy: 0.6367 - val_loss: 1.0497 - val_accuracy: 0.6613 - lr: 0.0010 Epoch 14/100 71/71 [==============================] - 1s 10ms/step - loss: 1.0892 - accuracy: 0.6547 - val_loss: 0.9319 - val_accuracy: 0.7013 - lr: 0.0010 Epoch 15/100 71/71 [==============================] - 1s 11ms/step - loss: 1.0381 - accuracy: 0.6748 - val_loss: 0.8847 - val_accuracy: 0.7180 - lr: 0.0010 Epoch 16/100 71/71 [==============================] - 1s 11ms/step - loss: 0.9725 - accuracy: 0.6924 - val_loss: 0.8808 - val_accuracy: 0.7257 - lr: 0.0010 Epoch 17/100 71/71 [==============================] - 1s 11ms/step - loss: 0.9070 - accuracy: 0.7148 - val_loss: 1.0332 - val_accuracy: 0.6570 - lr: 0.0010 Epoch 18/100 71/71 [==============================] - 1s 11ms/step - loss: 0.8729 - accuracy: 0.7191 - val_loss: 0.7338 - val_accuracy: 0.7643 - lr: 0.0010 Epoch 19/100 71/71 [==============================] - 1s 11ms/step - loss: 0.8106 - accuracy: 0.7406 - val_loss: 0.7500 - val_accuracy: 0.7613 - lr: 0.0010 Epoch 20/100 71/71 [==============================] - 1s 11ms/step - loss: 0.7759 - accuracy: 0.7533 - val_loss: 0.6381 - val_accuracy: 0.7990 - lr: 0.0010 Epoch 21/100 71/71 [==============================] - 1s 11ms/step - loss: 0.7373 - accuracy: 0.7687 - val_loss: 0.6084 - val_accuracy: 0.8200 - lr: 0.0010 Epoch 22/100 71/71 [==============================] - 1s 11ms/step - loss: 0.7244 - accuracy: 0.7750 - val_loss: 0.5626 - val_accuracy: 0.8370 - lr: 0.0010 Epoch 23/100 71/71 [==============================] - 1s 11ms/step - loss: 0.6705 - accuracy: 0.7871 - val_loss: 0.5523 - val_accuracy: 0.8317 - lr: 0.0010 Epoch 24/100 71/71 [==============================] - 1s 11ms/step - loss: 0.6425 - accuracy: 0.7926 - val_loss: 0.4926 - val_accuracy: 0.8527 - lr: 0.0010 Epoch 25/100 71/71 [==============================] - 1s 11ms/step - loss: 0.6130 - accuracy: 0.8079 - val_loss: 0.5096 - val_accuracy: 0.8487 - lr: 0.0010 Epoch 26/100 71/71 [==============================] - 1s 11ms/step - loss: 0.5885 - accuracy: 0.8149 - val_loss: 0.6480 - val_accuracy: 0.7947 - lr: 0.0010 Epoch 27/100 71/71 [==============================] - 1s 11ms/step - loss: 0.5625 - accuracy: 0.8193 - val_loss: 0.4381 - val_accuracy: 0.8637 - lr: 0.0010 Epoch 28/100 71/71 [==============================] - 1s 11ms/step - loss: 0.5466 - accuracy: 0.8264 - val_loss: 0.4285 - val_accuracy: 0.8697 - lr: 0.0010 Epoch 29/100 71/71 [==============================] - 1s 11ms/step - loss: 0.5265 - accuracy: 0.8350 - val_loss: 0.4666 - val_accuracy: 0.8507 - lr: 0.0010 Epoch 30/100 71/71 [==============================] - 1s 11ms/step - loss: 0.5249 - accuracy: 0.8356 - val_loss: 0.5147 - val_accuracy: 0.8427 - lr: 0.0010 Epoch 31/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4936 - accuracy: 0.8449 - val_loss: 0.4184 - val_accuracy: 0.8683 - lr: 0.0010 Epoch 32/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4722 - accuracy: 0.8552 - val_loss: 0.3811 - val_accuracy: 0.8790 - lr: 0.0010 Epoch 33/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4443 - accuracy: 0.8626 - val_loss: 0.4886 - val_accuracy: 0.8477 - lr: 0.0010 Epoch 34/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4653 - accuracy: 0.8538 - val_loss: 0.3757 - val_accuracy: 0.8830 - lr: 0.0010 Epoch 35/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4263 - accuracy: 0.8638 - val_loss: 0.3335 - val_accuracy: 0.8970 - lr: 0.0010 Epoch 36/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4276 - accuracy: 0.8695 - val_loss: 0.4002 - val_accuracy: 0.8767 - lr: 0.0010 Epoch 37/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4015 - accuracy: 0.8780 - val_loss: 0.3141 - val_accuracy: 0.9070 - lr: 0.0010 Epoch 38/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3860 - accuracy: 0.8756 - val_loss: 0.3126 - val_accuracy: 0.9043 - lr: 0.0010 Epoch 39/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3648 - accuracy: 0.8854 - val_loss: 0.3369 - val_accuracy: 0.8953 - lr: 0.0010 Epoch 40/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3868 - accuracy: 0.8833 - val_loss: 0.3242 - val_accuracy: 0.8993 - lr: 0.0010 Epoch 41/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3578 - accuracy: 0.8862 - val_loss: 0.3233 - val_accuracy: 0.8987 - lr: 0.0010 Epoch 42/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3741 - accuracy: 0.8844 - val_loss: 0.3275 - val_accuracy: 0.8980 - lr: 0.0010 Epoch 43/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3523 - accuracy: 0.8872 - val_loss: 0.7291 - val_accuracy: 0.7957 - lr: 0.0010 Epoch 44/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3613 - accuracy: 0.8908 - val_loss: 0.2936 - val_accuracy: 0.9117 - lr: 0.0010 Epoch 45/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3444 - accuracy: 0.8926 - val_loss: 0.2935 - val_accuracy: 0.9123 - lr: 0.0010 Epoch 46/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3311 - accuracy: 0.8962 - val_loss: 0.3563 - val_accuracy: 0.9000 - lr: 0.0010 Epoch 47/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3250 - accuracy: 0.8998 - val_loss: 0.6147 - val_accuracy: 0.8247 - lr: 0.0010 Epoch 48/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3254 - accuracy: 0.8965 - val_loss: 0.2899 - val_accuracy: 0.9133 - lr: 0.0010 Epoch 49/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3182 - accuracy: 0.9043 - val_loss: 0.3008 - val_accuracy: 0.9137 - lr: 0.0010 Epoch 50/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3092 - accuracy: 0.9054 - val_loss: 0.3076 - val_accuracy: 0.9110 - lr: 0.0010 Epoch 51/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3095 - accuracy: 0.9066 - val_loss: 0.2720 - val_accuracy: 0.9157 - lr: 0.0010 Epoch 52/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3093 - accuracy: 0.9068 - val_loss: 0.3214 - val_accuracy: 0.9030 - lr: 0.0010 Epoch 53/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3070 - accuracy: 0.9068 - val_loss: 0.2792 - val_accuracy: 0.9160 - lr: 0.0010 Epoch 54/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2963 - accuracy: 0.9073 - val_loss: 0.2908 - val_accuracy: 0.9163 - lr: 0.0010 Epoch 55/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2926 - accuracy: 0.9103 - val_loss: 0.2852 - val_accuracy: 0.9170 - lr: 0.0010 Epoch 56/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2706 - accuracy: 0.9196 - val_loss: 0.2528 - val_accuracy: 0.9247 - lr: 0.0010 Epoch 57/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2854 - accuracy: 0.9155 - val_loss: 0.4375 - val_accuracy: 0.8667 - lr: 0.0010 Epoch 58/100 71/71 [==============================] - 1s 12ms/step - loss: 0.2794 - accuracy: 0.9148 - val_loss: 0.2550 - val_accuracy: 0.9297 - lr: 0.0010 Epoch 59/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2791 - accuracy: 0.9163 - val_loss: 0.2422 - val_accuracy: 0.9310 - lr: 0.0010 Epoch 60/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2646 - accuracy: 0.9183 - val_loss: 0.2605 - val_accuracy: 0.9267 - lr: 0.0010 Epoch 61/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2572 - accuracy: 0.9232 - val_loss: 0.2447 - val_accuracy: 0.9330 - lr: 0.0010 Epoch 62/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2581 - accuracy: 0.9215 - val_loss: 0.4389 - val_accuracy: 0.8777 - lr: 0.0010 Epoch 63/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2574 - accuracy: 0.9238 - val_loss: 0.2367 - val_accuracy: 0.9327 - lr: 0.0010 Epoch 64/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2798 - accuracy: 0.9176 - val_loss: 0.3239 - val_accuracy: 0.9130 - lr: 0.0010 Epoch 65/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2568 - accuracy: 0.9255 - val_loss: 0.2485 - val_accuracy: 0.9287 - lr: 0.0010 Epoch 66/100 71/71 [==============================] - 1s 12ms/step - loss: 0.2585 - accuracy: 0.9230 - val_loss: 0.2958 - val_accuracy: 0.9163 - lr: 0.0010 Epoch 67/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2695 - accuracy: 0.9183 - val_loss: 0.2408 - val_accuracy: 0.9337 - lr: 0.0010 Epoch 68/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2427 - accuracy: 0.9292 - val_loss: 0.2612 - val_accuracy: 0.9297 - lr: 0.0010 Epoch 69/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2426 - accuracy: 0.9290 - val_loss: 0.2565 - val_accuracy: 0.9280 - lr: 0.0010 Epoch 70/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2607 - accuracy: 0.9235 - val_loss: 0.2386 - val_accuracy: 0.9340 - lr: 0.0010 Epoch 71/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2182 - accuracy: 0.9369 - val_loss: 0.2685 - val_accuracy: 0.9280 - lr: 9.0484e-04 Epoch 72/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2203 - accuracy: 0.9341 - val_loss: 0.2258 - val_accuracy: 0.9393 - lr: 8.1873e-04 Epoch 73/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1993 - accuracy: 0.9409 - val_loss: 0.2256 - val_accuracy: 0.9370 - lr: 7.4082e-04 Epoch 74/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1838 - accuracy: 0.9466 - val_loss: 0.2078 - val_accuracy: 0.9420 - lr: 6.7032e-04 Epoch 75/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1803 - accuracy: 0.9472 - val_loss: 0.2137 - val_accuracy: 0.9410 - lr: 6.0653e-04 Epoch 76/100 71/71 [==============================] - 1s 12ms/step - loss: 0.1663 - accuracy: 0.9506 - val_loss: 0.2282 - val_accuracy: 0.9387 - lr: 5.4881e-04 Epoch 77/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1655 - accuracy: 0.9482 - val_loss: 0.2081 - val_accuracy: 0.9433 - lr: 4.9659e-04 Epoch 78/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1579 - accuracy: 0.9549 - val_loss: 0.2076 - val_accuracy: 0.9443 - lr: 4.4933e-04 Epoch 79/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1459 - accuracy: 0.9579 - val_loss: 0.1928 - val_accuracy: 0.9470 - lr: 4.0657e-04 Epoch 80/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1459 - accuracy: 0.9569 - val_loss: 0.2166 - val_accuracy: 0.9400 - lr: 3.6788e-04 Epoch 81/100 71/71 [==============================] - 1s 12ms/step - loss: 0.1381 - accuracy: 0.9595 - val_loss: 0.2075 - val_accuracy: 0.9447 - lr: 3.3287e-04 Epoch 82/100 71/71 [==============================] - 1s 12ms/step - loss: 0.1362 - accuracy: 0.9586 - val_loss: 0.2041 - val_accuracy: 0.9440 - lr: 3.0119e-04 Epoch 83/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1307 - accuracy: 0.9599 - val_loss: 0.1999 - val_accuracy: 0.9503 - lr: 2.7253e-04 Epoch 84/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1348 - accuracy: 0.9598 - val_loss: 0.1916 - val_accuracy: 0.9503 - lr: 2.4660e-04 Epoch 85/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1391 - accuracy: 0.9596 - val_loss: 0.1917 - val_accuracy: 0.9503 - lr: 2.2313e-04 Epoch 86/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1256 - accuracy: 0.9630 - val_loss: 0.1927 - val_accuracy: 0.9490 - lr: 2.0190e-04 Epoch 87/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1139 - accuracy: 0.9654 - val_loss: 0.1958 - val_accuracy: 0.9490 - lr: 1.8268e-04 Epoch 88/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1203 - accuracy: 0.9650 - val_loss: 0.1951 - val_accuracy: 0.9487 - lr: 1.6530e-04 Epoch 89/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1205 - accuracy: 0.9650 - val_loss: 0.1950 - val_accuracy: 0.9497 - lr: 1.4957e-04 Epoch 90/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1202 - accuracy: 0.9657 - val_loss: 0.1956 - val_accuracy: 0.9483 - lr: 1.3534e-04 Epoch 91/100 71/71 [==============================] - 1s 12ms/step - loss: 0.1078 - accuracy: 0.9677 - val_loss: 0.1864 - val_accuracy: 0.9517 - lr: 1.2246e-04 Epoch 92/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1089 - accuracy: 0.9661 - val_loss: 0.1863 - val_accuracy: 0.9510 - lr: 1.1080e-04 Epoch 93/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1167 - accuracy: 0.9658 - val_loss: 0.1918 - val_accuracy: 0.9500 - lr: 1.0026e-04 Epoch 94/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1005 - accuracy: 0.9687 - val_loss: 0.1897 - val_accuracy: 0.9500 - lr: 9.0718e-05 Epoch 95/100 71/71 [==============================] - 1s 12ms/step - loss: 0.1060 - accuracy: 0.9665 - val_loss: 0.1895 - val_accuracy: 0.9523 - lr: 8.2085e-05 Epoch 96/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1050 - accuracy: 0.9702 - val_loss: 0.1890 - val_accuracy: 0.9520 - lr: 7.4273e-05 Epoch 97/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1211 - accuracy: 0.9638 - val_loss: 0.1885 - val_accuracy: 0.9490 - lr: 6.7205e-05 Epoch 98/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1044 - accuracy: 0.9677 - val_loss: 0.1890 - val_accuracy: 0.9517 - lr: 6.0810e-05 Epoch 99/100 71/71 [==============================] - 1s 12ms/step - loss: 0.1098 - accuracy: 0.9698 - val_loss: 0.1898 - val_accuracy: 0.9510 - lr: 5.5023e-05 Epoch 100/100 71/71 [==============================] - 1s 11ms/step - loss: 0.0922 - accuracy: 0.9724 - val_loss: 0.1882 - val_accuracy: 0.9510 - lr: 4.9787e-05 94/94 [==============================] - 0s 3ms/step - loss: 0.1818 - accuracy: 0.9507 CNN Error: 4.93%
# Model 2
from tensorflow.keras.callbacks import LearningRateScheduler
def scheduleLR(epoch,lr):
if epoch<70:
return lr
else:
return lr*tf.math.exp(-0.1)
model = Sequential()
model.add(Conv2D(64, (3, 3), activation='relu',input_shape=(31,31,1)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.4))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.4))
model.add(Conv2D(256, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.4))
model.add(Flatten())
model.add(Dense(512, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='rmsprop', metrics=['accuracy'])
callback = LearningRateScheduler(scheduleLR)
history = model.fit(X_train,y_train, validation_data=(X_val,y_val),epochs=100, batch_size=128,callbacks=[callback])
model.save_weights("./Best Model Weights/bestCNN31by31.h5")
scores = model.evaluate(X_test,y_test)
print("CNN Error: %.2f%%" % (100-scores[1]*100))
plotAUC(history)
Epoch 1/100 71/71 [==============================] - 2s 15ms/step - loss: 2.6146 - accuracy: 0.1058 - val_loss: 2.6575 - val_accuracy: 0.0987 - lr: 0.0010 Epoch 2/100 71/71 [==============================] - 1s 12ms/step - loss: 2.5163 - accuracy: 0.1444 - val_loss: 2.5330 - val_accuracy: 0.1337 - lr: 0.0010 Epoch 3/100 71/71 [==============================] - 1s 11ms/step - loss: 2.3924 - accuracy: 0.1962 - val_loss: 2.3014 - val_accuracy: 0.2720 - lr: 0.0010 Epoch 4/100 71/71 [==============================] - 1s 12ms/step - loss: 2.1782 - accuracy: 0.2807 - val_loss: 2.1067 - val_accuracy: 0.2893 - lr: 0.0010 Epoch 5/100 71/71 [==============================] - 1s 12ms/step - loss: 2.0218 - accuracy: 0.3438 - val_loss: 1.8833 - val_accuracy: 0.3743 - lr: 0.0010 Epoch 6/100 71/71 [==============================] - 1s 11ms/step - loss: 1.9019 - accuracy: 0.3833 - val_loss: 1.7824 - val_accuracy: 0.4147 - lr: 0.0010 Epoch 7/100 71/71 [==============================] - 1s 12ms/step - loss: 1.7478 - accuracy: 0.4383 - val_loss: 1.7592 - val_accuracy: 0.4267 - lr: 0.0010 Epoch 8/100 71/71 [==============================] - 1s 12ms/step - loss: 1.6187 - accuracy: 0.4785 - val_loss: 1.6128 - val_accuracy: 0.4927 - lr: 0.0010 Epoch 9/100 71/71 [==============================] - 1s 12ms/step - loss: 1.4995 - accuracy: 0.5261 - val_loss: 1.4691 - val_accuracy: 0.5163 - lr: 0.0010 Epoch 10/100 71/71 [==============================] - 1s 12ms/step - loss: 1.4261 - accuracy: 0.5441 - val_loss: 1.3118 - val_accuracy: 0.5877 - lr: 0.0010 Epoch 11/100 71/71 [==============================] - 1s 11ms/step - loss: 1.3230 - accuracy: 0.5757 - val_loss: 1.1571 - val_accuracy: 0.6320 - lr: 0.0010 Epoch 12/100 71/71 [==============================] - 1s 11ms/step - loss: 1.2334 - accuracy: 0.6077 - val_loss: 1.4318 - val_accuracy: 0.5467 - lr: 0.0010 Epoch 13/100 71/71 [==============================] - 1s 11ms/step - loss: 1.1584 - accuracy: 0.6352 - val_loss: 1.1460 - val_accuracy: 0.6340 - lr: 0.0010 Epoch 14/100 71/71 [==============================] - 1s 12ms/step - loss: 1.0977 - accuracy: 0.6534 - val_loss: 1.0781 - val_accuracy: 0.6467 - lr: 0.0010 Epoch 15/100 71/71 [==============================] - 1s 11ms/step - loss: 1.0370 - accuracy: 0.6748 - val_loss: 1.0538 - val_accuracy: 0.6677 - lr: 0.0010 Epoch 16/100 71/71 [==============================] - 1s 11ms/step - loss: 0.9469 - accuracy: 0.7000 - val_loss: 0.8536 - val_accuracy: 0.7270 - lr: 0.0010 Epoch 17/100 71/71 [==============================] - 1s 12ms/step - loss: 0.9029 - accuracy: 0.7158 - val_loss: 0.7054 - val_accuracy: 0.7847 - lr: 0.0010 Epoch 18/100 71/71 [==============================] - 1s 12ms/step - loss: 0.8704 - accuracy: 0.7220 - val_loss: 0.7518 - val_accuracy: 0.7713 - lr: 0.0010 Epoch 19/100 71/71 [==============================] - 1s 12ms/step - loss: 0.8214 - accuracy: 0.7428 - val_loss: 0.7206 - val_accuracy: 0.7940 - lr: 0.0010 Epoch 20/100 71/71 [==============================] - 1s 11ms/step - loss: 0.7731 - accuracy: 0.7543 - val_loss: 0.7182 - val_accuracy: 0.7750 - lr: 0.0010 Epoch 21/100 71/71 [==============================] - 1s 11ms/step - loss: 0.7547 - accuracy: 0.7655 - val_loss: 0.5698 - val_accuracy: 0.8260 - lr: 0.0010 Epoch 22/100 71/71 [==============================] - 1s 12ms/step - loss: 0.6877 - accuracy: 0.7823 - val_loss: 0.6482 - val_accuracy: 0.8053 - lr: 0.0010 Epoch 23/100 71/71 [==============================] - 1s 12ms/step - loss: 0.6656 - accuracy: 0.7857 - val_loss: 0.5407 - val_accuracy: 0.8363 - lr: 0.0010 Epoch 24/100 71/71 [==============================] - 1s 12ms/step - loss: 0.6586 - accuracy: 0.7984 - val_loss: 0.5658 - val_accuracy: 0.8273 - lr: 0.0010 Epoch 25/100 71/71 [==============================] - 1s 12ms/step - loss: 0.6042 - accuracy: 0.8126 - val_loss: 0.6059 - val_accuracy: 0.8067 - lr: 0.0010 Epoch 26/100 71/71 [==============================] - 1s 12ms/step - loss: 0.5818 - accuracy: 0.8189 - val_loss: 0.4874 - val_accuracy: 0.8480 - lr: 0.0010 Epoch 27/100 71/71 [==============================] - 1s 12ms/step - loss: 0.5622 - accuracy: 0.8229 - val_loss: 0.4335 - val_accuracy: 0.8677 - lr: 0.0010 Epoch 28/100 71/71 [==============================] - 1s 11ms/step - loss: 0.5168 - accuracy: 0.8378 - val_loss: 0.5520 - val_accuracy: 0.8293 - lr: 0.0010 Epoch 29/100 71/71 [==============================] - 1s 12ms/step - loss: 0.5273 - accuracy: 0.8348 - val_loss: 0.3741 - val_accuracy: 0.8867 - lr: 0.0010 Epoch 30/100 71/71 [==============================] - 1s 12ms/step - loss: 0.5125 - accuracy: 0.8398 - val_loss: 0.3988 - val_accuracy: 0.8793 - lr: 0.0010 Epoch 31/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4695 - accuracy: 0.8527 - val_loss: 0.5779 - val_accuracy: 0.8307 - lr: 0.0010 Epoch 32/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4863 - accuracy: 0.8545 - val_loss: 0.4150 - val_accuracy: 0.8750 - lr: 0.0010 Epoch 33/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4432 - accuracy: 0.8626 - val_loss: 0.3420 - val_accuracy: 0.8963 - lr: 0.0010 Epoch 34/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4420 - accuracy: 0.8605 - val_loss: 0.3685 - val_accuracy: 0.8883 - lr: 0.0010 Epoch 35/100 71/71 [==============================] - 1s 12ms/step - loss: 0.4274 - accuracy: 0.8656 - val_loss: 0.3523 - val_accuracy: 0.8980 - lr: 0.0010 Epoch 36/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4231 - accuracy: 0.8694 - val_loss: 0.4242 - val_accuracy: 0.8810 - lr: 0.0010 Epoch 37/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4174 - accuracy: 0.8683 - val_loss: 0.3094 - val_accuracy: 0.9073 - lr: 0.0010 Epoch 38/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3841 - accuracy: 0.8806 - val_loss: 0.3384 - val_accuracy: 0.8947 - lr: 0.0010 Epoch 39/100 71/71 [==============================] - 1s 11ms/step - loss: 0.4044 - accuracy: 0.8769 - val_loss: 0.3749 - val_accuracy: 0.8923 - lr: 0.0010 Epoch 40/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3605 - accuracy: 0.8858 - val_loss: 0.2837 - val_accuracy: 0.9173 - lr: 0.0010 Epoch 41/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3603 - accuracy: 0.8849 - val_loss: 0.4752 - val_accuracy: 0.8653 - lr: 0.0010 Epoch 42/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3581 - accuracy: 0.8880 - val_loss: 0.3595 - val_accuracy: 0.8923 - lr: 0.0010 Epoch 43/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3468 - accuracy: 0.8984 - val_loss: 0.2862 - val_accuracy: 0.9210 - lr: 0.0010 Epoch 44/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3369 - accuracy: 0.8962 - val_loss: 0.3074 - val_accuracy: 0.9163 - lr: 0.0010 Epoch 45/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3181 - accuracy: 0.9042 - val_loss: 0.4118 - val_accuracy: 0.8777 - lr: 0.0010 Epoch 46/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3259 - accuracy: 0.9008 - val_loss: 0.2826 - val_accuracy: 0.9167 - lr: 0.0010 Epoch 47/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3254 - accuracy: 0.9004 - val_loss: 0.2988 - val_accuracy: 0.9117 - lr: 0.0010 Epoch 48/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3228 - accuracy: 0.9010 - val_loss: 0.2823 - val_accuracy: 0.9180 - lr: 0.0010 Epoch 49/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3060 - accuracy: 0.9052 - val_loss: 0.3049 - val_accuracy: 0.9063 - lr: 0.0010 Epoch 50/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3134 - accuracy: 0.9045 - val_loss: 0.2886 - val_accuracy: 0.9140 - lr: 0.0010 Epoch 51/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3073 - accuracy: 0.9075 - val_loss: 0.3366 - val_accuracy: 0.9033 - lr: 0.0010 Epoch 52/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3027 - accuracy: 0.9058 - val_loss: 0.2482 - val_accuracy: 0.9317 - lr: 0.0010 Epoch 53/100 71/71 [==============================] - 1s 11ms/step - loss: 0.3083 - accuracy: 0.9074 - val_loss: 0.3045 - val_accuracy: 0.9223 - lr: 0.0010 Epoch 54/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2706 - accuracy: 0.9149 - val_loss: 0.2880 - val_accuracy: 0.9240 - lr: 0.0010 Epoch 55/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2965 - accuracy: 0.9093 - val_loss: 0.2367 - val_accuracy: 0.9380 - lr: 0.0010 Epoch 56/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2923 - accuracy: 0.9098 - val_loss: 0.2823 - val_accuracy: 0.9187 - lr: 0.0010 Epoch 57/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2841 - accuracy: 0.9119 - val_loss: 0.2983 - val_accuracy: 0.9113 - lr: 0.0010 Epoch 58/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2753 - accuracy: 0.9196 - val_loss: 0.2570 - val_accuracy: 0.9287 - lr: 0.0010 Epoch 59/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2752 - accuracy: 0.9169 - val_loss: 0.2839 - val_accuracy: 0.9227 - lr: 0.0010 Epoch 60/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2793 - accuracy: 0.9150 - val_loss: 0.3255 - val_accuracy: 0.9093 - lr: 0.0010 Epoch 61/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2578 - accuracy: 0.9247 - val_loss: 0.2240 - val_accuracy: 0.9377 - lr: 0.0010 Epoch 62/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2531 - accuracy: 0.9210 - val_loss: 0.2783 - val_accuracy: 0.9227 - lr: 0.0010 Epoch 63/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2406 - accuracy: 0.9303 - val_loss: 0.2423 - val_accuracy: 0.9350 - lr: 0.0010 Epoch 64/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2585 - accuracy: 0.9255 - val_loss: 0.2468 - val_accuracy: 0.9297 - lr: 0.0010 Epoch 65/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2695 - accuracy: 0.9196 - val_loss: 0.2146 - val_accuracy: 0.9367 - lr: 0.0010 Epoch 66/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2667 - accuracy: 0.9242 - val_loss: 0.3162 - val_accuracy: 0.9123 - lr: 0.0010 Epoch 67/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2466 - accuracy: 0.9284 - val_loss: 0.2649 - val_accuracy: 0.9293 - lr: 0.0010 Epoch 68/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2528 - accuracy: 0.9279 - val_loss: 0.3660 - val_accuracy: 0.8987 - lr: 0.0010 Epoch 69/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2545 - accuracy: 0.9242 - val_loss: 0.4681 - val_accuracy: 0.8687 - lr: 0.0010 Epoch 70/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2533 - accuracy: 0.9266 - val_loss: 0.2380 - val_accuracy: 0.9343 - lr: 0.0010 Epoch 71/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2428 - accuracy: 0.9327 - val_loss: 0.2419 - val_accuracy: 0.9330 - lr: 9.0484e-04 Epoch 72/100 71/71 [==============================] - 1s 12ms/step - loss: 0.2106 - accuracy: 0.9412 - val_loss: 0.2199 - val_accuracy: 0.9413 - lr: 8.1873e-04 Epoch 73/100 71/71 [==============================] - 1s 11ms/step - loss: 0.2040 - accuracy: 0.9415 - val_loss: 0.2772 - val_accuracy: 0.9220 - lr: 7.4082e-04 Epoch 74/100 71/71 [==============================] - 1s 12ms/step - loss: 0.1950 - accuracy: 0.9424 - val_loss: 0.1999 - val_accuracy: 0.9500 - lr: 6.7032e-04 Epoch 75/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1879 - accuracy: 0.9455 - val_loss: 0.2045 - val_accuracy: 0.9443 - lr: 6.0653e-04 Epoch 76/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1721 - accuracy: 0.9489 - val_loss: 0.2729 - val_accuracy: 0.9273 - lr: 5.4881e-04 Epoch 77/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1691 - accuracy: 0.9490 - val_loss: 0.2088 - val_accuracy: 0.9463 - lr: 4.9659e-04 Epoch 78/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1532 - accuracy: 0.9531 - val_loss: 0.2047 - val_accuracy: 0.9470 - lr: 4.4933e-04 Epoch 79/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1480 - accuracy: 0.9578 - val_loss: 0.2048 - val_accuracy: 0.9447 - lr: 4.0657e-04 Epoch 80/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1416 - accuracy: 0.9598 - val_loss: 0.2044 - val_accuracy: 0.9490 - lr: 3.6788e-04 Epoch 81/100 71/71 [==============================] - 1s 12ms/step - loss: 0.1570 - accuracy: 0.9545 - val_loss: 0.2126 - val_accuracy: 0.9460 - lr: 3.3287e-04 Epoch 82/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1324 - accuracy: 0.9584 - val_loss: 0.1763 - val_accuracy: 0.9523 - lr: 3.0119e-04 Epoch 83/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1261 - accuracy: 0.9620 - val_loss: 0.1908 - val_accuracy: 0.9503 - lr: 2.7253e-04 Epoch 84/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1154 - accuracy: 0.9654 - val_loss: 0.1892 - val_accuracy: 0.9543 - lr: 2.4660e-04 Epoch 85/100 71/71 [==============================] - 1s 12ms/step - loss: 0.1183 - accuracy: 0.9678 - val_loss: 0.1915 - val_accuracy: 0.9493 - lr: 2.2313e-04 Epoch 86/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1166 - accuracy: 0.9682 - val_loss: 0.1827 - val_accuracy: 0.9510 - lr: 2.0190e-04 Epoch 87/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1254 - accuracy: 0.9611 - val_loss: 0.1785 - val_accuracy: 0.9540 - lr: 1.8268e-04 Epoch 88/100 71/71 [==============================] - 1s 12ms/step - loss: 0.1216 - accuracy: 0.9657 - val_loss: 0.1845 - val_accuracy: 0.9507 - lr: 1.6530e-04 Epoch 89/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1183 - accuracy: 0.9668 - val_loss: 0.1805 - val_accuracy: 0.9537 - lr: 1.4957e-04 Epoch 90/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1203 - accuracy: 0.9637 - val_loss: 0.1816 - val_accuracy: 0.9523 - lr: 1.3534e-04 Epoch 91/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1023 - accuracy: 0.9661 - val_loss: 0.1810 - val_accuracy: 0.9530 - lr: 1.2246e-04 Epoch 92/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1173 - accuracy: 0.9654 - val_loss: 0.1853 - val_accuracy: 0.9540 - lr: 1.1080e-04 Epoch 93/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1011 - accuracy: 0.9672 - val_loss: 0.1871 - val_accuracy: 0.9520 - lr: 1.0026e-04 Epoch 94/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1115 - accuracy: 0.9675 - val_loss: 0.1839 - val_accuracy: 0.9513 - lr: 9.0718e-05 Epoch 95/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1131 - accuracy: 0.9662 - val_loss: 0.1779 - val_accuracy: 0.9550 - lr: 8.2085e-05 Epoch 96/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1011 - accuracy: 0.9683 - val_loss: 0.1843 - val_accuracy: 0.9523 - lr: 7.4273e-05 Epoch 97/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1115 - accuracy: 0.9673 - val_loss: 0.1781 - val_accuracy: 0.9543 - lr: 6.7205e-05 Epoch 98/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1193 - accuracy: 0.9660 - val_loss: 0.1801 - val_accuracy: 0.9520 - lr: 6.0810e-05 Epoch 99/100 71/71 [==============================] - 1s 11ms/step - loss: 0.0969 - accuracy: 0.9742 - val_loss: 0.1772 - val_accuracy: 0.9563 - lr: 5.5023e-05 Epoch 100/100 71/71 [==============================] - 1s 11ms/step - loss: 0.1023 - accuracy: 0.9708 - val_loss: 0.1799 - val_accuracy: 0.9530 - lr: 4.9787e-05 94/94 [==============================] - 0s 4ms/step - loss: 0.1748 - accuracy: 0.9557 CNN Error: 4.43%
model.summary()
Model: "sequential"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
conv2d (Conv2D) (None, 29, 29, 64) 640
max_pooling2d (MaxPooling2D (None, 14, 14, 64) 0
)
dropout (Dropout) (None, 14, 14, 64) 0
conv2d_1 (Conv2D) (None, 12, 12, 128) 73856
max_pooling2d_1 (MaxPooling (None, 6, 6, 128) 0
2D)
dropout_1 (Dropout) (None, 6, 6, 128) 0
conv2d_2 (Conv2D) (None, 4, 4, 256) 295168
max_pooling2d_2 (MaxPooling (None, 2, 2, 256) 0
2D)
dropout_2 (Dropout) (None, 2, 2, 256) 0
flatten (Flatten) (None, 1024) 0
dense (Dense) (None, 512) 524800
dropout_3 (Dropout) (None, 512) 0
dense_1 (Dense) (None, 256) 131328
dropout_4 (Dropout) (None, 256) 0
dense_2 (Dense) (None, 15) 3855
=================================================================
Total params: 1,029,647
Trainable params: 1,029,647
Non-trainable params: 0
_________________________________________________________________
# pip install pydot
# pip install graphviz
# conda install graphviz
# Restart kernal after installation
plot_model(model,show_shapes=True,show_layer_names=True)
from tensorflow.keras.callbacks import LearningRateScheduler
def scheduleLR(epoch,lr):
if epoch<70:
return lr
else:
return lr*tf.math.exp(-0.1)
model = Sequential()
model.add(Conv2D(64, (3, 3), activation='relu',input_shape=(31,31,1)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.4))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.4))
model.add(Conv2D(256, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.4))
model.add(Flatten())
model.add(Dense(512, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='rmsprop', metrics=['accuracy'])
callback = LearningRateScheduler(scheduleLR)
model.load_weights("./Best Model Weights/bestCNN31by31.h5")
train = image_dataset_from_directory(directory='./Dataset for CA1 part A/train',color_mode='grayscale',label_mode='categorical',image_size=(128,128))
test = image_dataset_from_directory(directory='./Dataset for CA1 part A/test',color_mode='grayscale',label_mode='categorical',image_size=(128,128))
validation = image_dataset_from_directory(directory='./Dataset for CA1 part A/validation',color_mode='grayscale',label_mode='categorical',image_size=(128,128))
Found 9028 files belonging to 15 classes. Found 3000 files belonging to 15 classes. Found 3000 files belonging to 15 classes.
X_train = []
y_train = []
for images, labels in train:
X_train.append(images)
y_train.append(labels)
X_train = np.concatenate(X_train, axis=0)
X_train = np.squeeze(X_train, axis=-1)
y_train = np.concatenate(y_train, axis=0)
X_test = []
y_test = []
for images, labels in test:
X_test.append(images)
y_test.append(labels)
X_test = np.concatenate(X_test, axis=0)
X_test = np.squeeze(X_test, axis=-1)
y_test = np.concatenate(y_test, axis=0)
X_val = []
y_val = []
for images, labels in validation:
X_val.append(images)
y_val.append(labels)
X_val = np.concatenate(X_val, axis=0)
X_val = np.squeeze(X_val, axis=-1)
y_val = np.concatenate(y_val, axis=0)
from tensorflow.keras.utils import to_categorical
X_train = np.array(X_train) / 255.0
X_test = np.array(X_test) / 255.0
X_val = np.array(X_val) / 255.0
model = Sequential()
model.add(Conv2D(32, (3, 3), activation='relu',input_shape=(128,128,1)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Conv2D(64, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Flatten())
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.3))
model.add(Dense(128, activation='relu'))
model.add(Dropout(0.3))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
history = model.fit(X_train, y_train, validation_data=(X_val,y_val),epochs=50, batch_size=64)
scores = model.evaluate(X_test,y_test)
print("CNN Error: %.2f%%" % (100-scores[1]*100))
plotAUC(history)
Epoch 1/50 142/142 [==============================] - 6s 34ms/step - loss: 2.3624 - accuracy: 0.2156 - val_loss: 1.8927 - val_accuracy: 0.4043 Epoch 2/50 142/142 [==============================] - 4s 30ms/step - loss: 1.6628 - accuracy: 0.4755 - val_loss: 1.4251 - val_accuracy: 0.5423 Epoch 3/50 142/142 [==============================] - 4s 29ms/step - loss: 1.2266 - accuracy: 0.6117 - val_loss: 1.1254 - val_accuracy: 0.6463 Epoch 4/50 142/142 [==============================] - 4s 28ms/step - loss: 0.8580 - accuracy: 0.7272 - val_loss: 0.6950 - val_accuracy: 0.7840 Epoch 5/50 142/142 [==============================] - 4s 29ms/step - loss: 0.6612 - accuracy: 0.7892 - val_loss: 0.5919 - val_accuracy: 0.8140 Epoch 6/50 142/142 [==============================] - 4s 28ms/step - loss: 0.4767 - accuracy: 0.8477 - val_loss: 0.5688 - val_accuracy: 0.8267 Epoch 7/50 142/142 [==============================] - 4s 28ms/step - loss: 0.3740 - accuracy: 0.8827 - val_loss: 0.5666 - val_accuracy: 0.8313 Epoch 8/50 142/142 [==============================] - 4s 28ms/step - loss: 0.3104 - accuracy: 0.8972 - val_loss: 0.5108 - val_accuracy: 0.8537 Epoch 9/50 142/142 [==============================] - 4s 28ms/step - loss: 0.2428 - accuracy: 0.9241 - val_loss: 0.5938 - val_accuracy: 0.8303 Epoch 10/50 142/142 [==============================] - 4s 28ms/step - loss: 0.1860 - accuracy: 0.9389 - val_loss: 0.5248 - val_accuracy: 0.8680 Epoch 11/50 142/142 [==============================] - 4s 28ms/step - loss: 0.1900 - accuracy: 0.9379 - val_loss: 0.4957 - val_accuracy: 0.8710 Epoch 12/50 142/142 [==============================] - 4s 29ms/step - loss: 0.1554 - accuracy: 0.9507 - val_loss: 0.4915 - val_accuracy: 0.8723 Epoch 13/50 142/142 [==============================] - 4s 29ms/step - loss: 0.1162 - accuracy: 0.9631 - val_loss: 0.4392 - val_accuracy: 0.8910 Epoch 14/50 142/142 [==============================] - 4s 30ms/step - loss: 0.1280 - accuracy: 0.9598 - val_loss: 0.4295 - val_accuracy: 0.8933 Epoch 15/50 142/142 [==============================] - 4s 29ms/step - loss: 0.1058 - accuracy: 0.9680 - val_loss: 0.4414 - val_accuracy: 0.8887 Epoch 16/50 142/142 [==============================] - 4s 29ms/step - loss: 0.0992 - accuracy: 0.9683 - val_loss: 0.6128 - val_accuracy: 0.8610 Epoch 17/50 142/142 [==============================] - 4s 29ms/step - loss: 0.1592 - accuracy: 0.9512 - val_loss: 0.5056 - val_accuracy: 0.8790 Epoch 18/50 142/142 [==============================] - 4s 29ms/step - loss: 0.0895 - accuracy: 0.9721 - val_loss: 0.9852 - val_accuracy: 0.7760 Epoch 19/50 142/142 [==============================] - 4s 29ms/step - loss: 0.1948 - accuracy: 0.9477 - val_loss: 0.5561 - val_accuracy: 0.8663 Epoch 20/50 142/142 [==============================] - 4s 29ms/step - loss: 0.0793 - accuracy: 0.9762 - val_loss: 0.5009 - val_accuracy: 0.8820 Epoch 21/50 142/142 [==============================] - 4s 29ms/step - loss: 0.0737 - accuracy: 0.9766 - val_loss: 0.4845 - val_accuracy: 0.8923 Epoch 22/50 142/142 [==============================] - 4s 29ms/step - loss: 0.0669 - accuracy: 0.9788 - val_loss: 0.5193 - val_accuracy: 0.8823 Epoch 23/50 142/142 [==============================] - 4s 29ms/step - loss: 0.0506 - accuracy: 0.9819 - val_loss: 0.5128 - val_accuracy: 0.8860 Epoch 24/50 142/142 [==============================] - 4s 29ms/step - loss: 0.0547 - accuracy: 0.9826 - val_loss: 0.5216 - val_accuracy: 0.8880 Epoch 25/50 142/142 [==============================] - 4s 29ms/step - loss: 0.1292 - accuracy: 0.9650 - val_loss: 0.6556 - val_accuracy: 0.8657 Epoch 26/50 142/142 [==============================] - 4s 29ms/step - loss: 0.0616 - accuracy: 0.9818 - val_loss: 0.4346 - val_accuracy: 0.8973 Epoch 27/50 142/142 [==============================] - 4s 28ms/step - loss: 0.0511 - accuracy: 0.9849 - val_loss: 0.4672 - val_accuracy: 0.9020 Epoch 28/50 142/142 [==============================] - 4s 28ms/step - loss: 0.0526 - accuracy: 0.9834 - val_loss: 0.5958 - val_accuracy: 0.8760 Epoch 29/50 142/142 [==============================] - 4s 29ms/step - loss: 0.0577 - accuracy: 0.9815 - val_loss: 0.4695 - val_accuracy: 0.8977 Epoch 30/50 142/142 [==============================] - 4s 29ms/step - loss: 0.0596 - accuracy: 0.9817 - val_loss: 0.5126 - val_accuracy: 0.8817 Epoch 31/50 142/142 [==============================] - 4s 29ms/step - loss: 0.0488 - accuracy: 0.9834 - val_loss: 0.5277 - val_accuracy: 0.8867 Epoch 32/50 142/142 [==============================] - 4s 30ms/step - loss: 0.0404 - accuracy: 0.9868 - val_loss: 0.4987 - val_accuracy: 0.8913 Epoch 33/50 142/142 [==============================] - 4s 29ms/step - loss: 0.0466 - accuracy: 0.9856 - val_loss: 0.4958 - val_accuracy: 0.8937 Epoch 34/50 142/142 [==============================] - 4s 29ms/step - loss: 0.0431 - accuracy: 0.9856 - val_loss: 0.5641 - val_accuracy: 0.8890 Epoch 35/50 142/142 [==============================] - 4s 28ms/step - loss: 0.0544 - accuracy: 0.9824 - val_loss: 0.5487 - val_accuracy: 0.8810 Epoch 36/50 142/142 [==============================] - 4s 29ms/step - loss: 0.0480 - accuracy: 0.9847 - val_loss: 0.5366 - val_accuracy: 0.8897 Epoch 37/50 142/142 [==============================] - 4s 29ms/step - loss: 0.0585 - accuracy: 0.9813 - val_loss: 0.5506 - val_accuracy: 0.8907 Epoch 38/50 142/142 [==============================] - 4s 29ms/step - loss: 0.0382 - accuracy: 0.9874 - val_loss: 0.7103 - val_accuracy: 0.8603 Epoch 39/50 142/142 [==============================] - 4s 29ms/step - loss: 0.0481 - accuracy: 0.9849 - val_loss: 0.4839 - val_accuracy: 0.8930 Epoch 40/50 142/142 [==============================] - 4s 30ms/step - loss: 0.0588 - accuracy: 0.9822 - val_loss: 0.6705 - val_accuracy: 0.8510 Epoch 41/50 142/142 [==============================] - 4s 30ms/step - loss: 0.0882 - accuracy: 0.9745 - val_loss: 0.4858 - val_accuracy: 0.8930 Epoch 42/50 142/142 [==============================] - 4s 29ms/step - loss: 0.0335 - accuracy: 0.9901 - val_loss: 0.6641 - val_accuracy: 0.8720 Epoch 43/50 142/142 [==============================] - 4s 29ms/step - loss: 0.0474 - accuracy: 0.9866 - val_loss: 0.5089 - val_accuracy: 0.8850 Epoch 44/50 142/142 [==============================] - 4s 30ms/step - loss: 0.0385 - accuracy: 0.9881 - val_loss: 0.5323 - val_accuracy: 0.8930 Epoch 45/50 142/142 [==============================] - 4s 30ms/step - loss: 0.0240 - accuracy: 0.9919 - val_loss: 0.5133 - val_accuracy: 0.8990 Epoch 46/50 142/142 [==============================] - 4s 30ms/step - loss: 0.0362 - accuracy: 0.9898 - val_loss: 0.6385 - val_accuracy: 0.8793 Epoch 47/50 142/142 [==============================] - 4s 30ms/step - loss: 0.0367 - accuracy: 0.9888 - val_loss: 0.5206 - val_accuracy: 0.8923 Epoch 48/50 142/142 [==============================] - 4s 30ms/step - loss: 0.0423 - accuracy: 0.9860 - val_loss: 0.7198 - val_accuracy: 0.8567 Epoch 49/50 142/142 [==============================] - 4s 29ms/step - loss: 0.0490 - accuracy: 0.9867 - val_loss: 0.5313 - val_accuracy: 0.8850 Epoch 50/50 142/142 [==============================] - 4s 29ms/step - loss: 0.0217 - accuracy: 0.9924 - val_loss: 0.5012 - val_accuracy: 0.8983 94/94 [==============================] - 1s 7ms/step - loss: 0.4580 - accuracy: 0.9020 CNN Error: 9.80%
model = Sequential()
model.add(Conv2D(32, (3, 3), activation='relu',input_shape=(128,128,1)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(64, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.3))
model.add(Dense(128, activation='relu'))
model.add(Dropout(0.3))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
history = model.fit(X_train, y_train, validation_data=(X_val,y_val),epochs=50, batch_size=64)
model.save_weights("./CNN Weights (128 by 128)/model1.h5")
scores = model.evaluate(X_test,y_test)
print("CNN Error: %.2f%%" % (100-scores[1]*100))
plotAUC(history)
Epoch 1/50 142/142 [==============================] - 6s 35ms/step - loss: 2.4164 - accuracy: 0.1920 - val_loss: 2.2991 - val_accuracy: 0.2320 Epoch 2/50 142/142 [==============================] - 5s 32ms/step - loss: 1.8160 - accuracy: 0.4199 - val_loss: 1.8964 - val_accuracy: 0.3943 Epoch 3/50 142/142 [==============================] - 5s 32ms/step - loss: 1.4235 - accuracy: 0.5450 - val_loss: 1.5455 - val_accuracy: 0.5043 Epoch 4/50 142/142 [==============================] - 4s 32ms/step - loss: 1.1464 - accuracy: 0.6360 - val_loss: 1.2748 - val_accuracy: 0.5870 Epoch 5/50 142/142 [==============================] - 4s 31ms/step - loss: 0.9815 - accuracy: 0.6880 - val_loss: 0.8430 - val_accuracy: 0.7347 Epoch 6/50 142/142 [==============================] - 4s 31ms/step - loss: 0.7785 - accuracy: 0.7528 - val_loss: 1.0649 - val_accuracy: 0.6780 Epoch 7/50 142/142 [==============================] - 4s 31ms/step - loss: 0.6374 - accuracy: 0.8002 - val_loss: 0.6060 - val_accuracy: 0.8113 Epoch 8/50 142/142 [==============================] - 4s 31ms/step - loss: 0.5065 - accuracy: 0.8378 - val_loss: 0.6732 - val_accuracy: 0.7930 Epoch 9/50 142/142 [==============================] - 4s 31ms/step - loss: 0.4571 - accuracy: 0.8526 - val_loss: 0.6119 - val_accuracy: 0.8177 Epoch 10/50 142/142 [==============================] - 4s 31ms/step - loss: 0.3795 - accuracy: 0.8774 - val_loss: 0.4841 - val_accuracy: 0.8577 Epoch 11/50 142/142 [==============================] - 4s 31ms/step - loss: 0.3437 - accuracy: 0.8882 - val_loss: 0.5174 - val_accuracy: 0.8467 Epoch 12/50 142/142 [==============================] - 4s 31ms/step - loss: 0.2804 - accuracy: 0.9077 - val_loss: 0.5476 - val_accuracy: 0.8573 Epoch 13/50 142/142 [==============================] - 4s 31ms/step - loss: 0.2634 - accuracy: 0.9161 - val_loss: 0.5231 - val_accuracy: 0.8573 Epoch 14/50 142/142 [==============================] - 4s 31ms/step - loss: 0.2584 - accuracy: 0.9181 - val_loss: 0.4182 - val_accuracy: 0.8840 Epoch 15/50 142/142 [==============================] - 5s 32ms/step - loss: 0.2356 - accuracy: 0.9204 - val_loss: 0.4578 - val_accuracy: 0.8667 Epoch 16/50 142/142 [==============================] - 5s 32ms/step - loss: 0.1999 - accuracy: 0.9339 - val_loss: 0.5060 - val_accuracy: 0.8707 Epoch 17/50 142/142 [==============================] - 5s 32ms/step - loss: 0.2900 - accuracy: 0.9105 - val_loss: 0.4242 - val_accuracy: 0.8853 Epoch 18/50 142/142 [==============================] - 4s 31ms/step - loss: 0.1593 - accuracy: 0.9473 - val_loss: 0.4583 - val_accuracy: 0.8830 Epoch 19/50 142/142 [==============================] - 4s 31ms/step - loss: 0.1451 - accuracy: 0.9540 - val_loss: 0.7730 - val_accuracy: 0.8037 Epoch 20/50 142/142 [==============================] - 4s 31ms/step - loss: 0.2075 - accuracy: 0.9379 - val_loss: 0.4761 - val_accuracy: 0.8780 Epoch 21/50 142/142 [==============================] - 5s 32ms/step - loss: 0.1495 - accuracy: 0.9518 - val_loss: 0.4265 - val_accuracy: 0.8890 Epoch 22/50 142/142 [==============================] - 5s 32ms/step - loss: 0.1265 - accuracy: 0.9572 - val_loss: 0.4539 - val_accuracy: 0.8897 Epoch 23/50 142/142 [==============================] - 4s 31ms/step - loss: 0.1174 - accuracy: 0.9607 - val_loss: 0.4467 - val_accuracy: 0.8850 Epoch 24/50 142/142 [==============================] - 4s 31ms/step - loss: 0.1152 - accuracy: 0.9625 - val_loss: 0.4934 - val_accuracy: 0.8793 Epoch 25/50 142/142 [==============================] - 4s 31ms/step - loss: 0.1071 - accuracy: 0.9667 - val_loss: 0.3971 - val_accuracy: 0.9017 Epoch 26/50 142/142 [==============================] - 4s 31ms/step - loss: 0.1151 - accuracy: 0.9622 - val_loss: 0.4564 - val_accuracy: 0.8853 Epoch 27/50 142/142 [==============================] - 4s 31ms/step - loss: 0.0969 - accuracy: 0.9690 - val_loss: 0.4381 - val_accuracy: 0.8943 Epoch 28/50 142/142 [==============================] - 4s 31ms/step - loss: 0.1027 - accuracy: 0.9678 - val_loss: 0.4942 - val_accuracy: 0.8893 Epoch 29/50 142/142 [==============================] - 4s 31ms/step - loss: 0.1145 - accuracy: 0.9653 - val_loss: 0.4650 - val_accuracy: 0.8893 Epoch 30/50 142/142 [==============================] - 4s 31ms/step - loss: 0.0956 - accuracy: 0.9685 - val_loss: 0.5519 - val_accuracy: 0.8740 Epoch 31/50 142/142 [==============================] - 4s 31ms/step - loss: 0.0925 - accuracy: 0.9711 - val_loss: 0.4599 - val_accuracy: 0.8883 Epoch 32/50 142/142 [==============================] - 4s 31ms/step - loss: 0.1349 - accuracy: 0.9596 - val_loss: 0.4008 - val_accuracy: 0.9017 Epoch 33/50 142/142 [==============================] - 4s 31ms/step - loss: 0.0774 - accuracy: 0.9761 - val_loss: 0.4608 - val_accuracy: 0.8963 Epoch 34/50 142/142 [==============================] - 4s 31ms/step - loss: 0.1262 - accuracy: 0.9601 - val_loss: 0.4403 - val_accuracy: 0.8913 Epoch 35/50 142/142 [==============================] - 4s 31ms/step - loss: 0.0719 - accuracy: 0.9770 - val_loss: 0.5952 - val_accuracy: 0.8620 Epoch 36/50 142/142 [==============================] - 4s 31ms/step - loss: 0.0777 - accuracy: 0.9773 - val_loss: 0.5261 - val_accuracy: 0.8830 Epoch 37/50 142/142 [==============================] - 4s 31ms/step - loss: 0.0792 - accuracy: 0.9773 - val_loss: 0.4174 - val_accuracy: 0.8983 Epoch 38/50 142/142 [==============================] - 4s 31ms/step - loss: 0.0761 - accuracy: 0.9751 - val_loss: 0.4185 - val_accuracy: 0.9063 Epoch 39/50 142/142 [==============================] - 4s 31ms/step - loss: 0.0803 - accuracy: 0.9749 - val_loss: 0.4233 - val_accuracy: 0.9040 Epoch 40/50 142/142 [==============================] - 4s 31ms/step - loss: 0.0758 - accuracy: 0.9763 - val_loss: 0.4747 - val_accuracy: 0.8957 Epoch 41/50 142/142 [==============================] - 4s 31ms/step - loss: 0.0540 - accuracy: 0.9814 - val_loss: 0.4464 - val_accuracy: 0.9037 Epoch 42/50 142/142 [==============================] - 4s 31ms/step - loss: 0.0661 - accuracy: 0.9793 - val_loss: 0.4791 - val_accuracy: 0.8930 Epoch 43/50 142/142 [==============================] - 4s 31ms/step - loss: 0.0803 - accuracy: 0.9757 - val_loss: 0.5310 - val_accuracy: 0.8767 Epoch 44/50 142/142 [==============================] - 4s 31ms/step - loss: 0.0980 - accuracy: 0.9691 - val_loss: 0.4697 - val_accuracy: 0.8860 Epoch 45/50 142/142 [==============================] - 4s 31ms/step - loss: 0.0717 - accuracy: 0.9774 - val_loss: 0.4853 - val_accuracy: 0.8867 Epoch 46/50 142/142 [==============================] - 4s 31ms/step - loss: 0.0898 - accuracy: 0.9726 - val_loss: 0.5058 - val_accuracy: 0.8807 Epoch 47/50 142/142 [==============================] - 4s 31ms/step - loss: 0.0673 - accuracy: 0.9803 - val_loss: 0.5044 - val_accuracy: 0.8887 Epoch 48/50 142/142 [==============================] - 4s 32ms/step - loss: 0.0581 - accuracy: 0.9826 - val_loss: 0.5172 - val_accuracy: 0.8803 Epoch 49/50 142/142 [==============================] - 5s 33ms/step - loss: 0.2105 - accuracy: 0.9453 - val_loss: 0.4100 - val_accuracy: 0.8957 Epoch 50/50 142/142 [==============================] - 5s 33ms/step - loss: 0.0561 - accuracy: 0.9823 - val_loss: 0.4047 - val_accuracy: 0.9050 94/94 [==============================] - 1s 6ms/step - loss: 0.4274 - accuracy: 0.9017 CNN Error: 9.83%
model.summary()
Model: "sequential_84"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
conv2d_250 (Conv2D) (None, 126, 126, 32) 320
max_pooling2d_236 (MaxPooli (None, 63, 63, 32) 0
ng2D)
dropout_339 (Dropout) (None, 63, 63, 32) 0
conv2d_251 (Conv2D) (None, 61, 61, 64) 18496
max_pooling2d_237 (MaxPooli (None, 30, 30, 64) 0
ng2D)
dropout_340 (Dropout) (None, 30, 30, 64) 0
conv2d_252 (Conv2D) (None, 28, 28, 128) 73856
max_pooling2d_238 (MaxPooli (None, 14, 14, 128) 0
ng2D)
dropout_341 (Dropout) (None, 14, 14, 128) 0
flatten_78 (Flatten) (None, 25088) 0
dense_237 (Dense) (None, 256) 6422784
dropout_342 (Dropout) (None, 256) 0
dense_238 (Dense) (None, 128) 32896
dropout_343 (Dropout) (None, 128) 0
dense_239 (Dense) (None, 15) 1935
=================================================================
Total params: 6,550,287
Trainable params: 6,550,287
Non-trainable params: 0
_________________________________________________________________
model = Sequential()
model.add(Conv2D(32, (3, 3), activation='relu',input_shape=(128,128,1)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(64, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.3))
model.add(Dense(128, activation='relu'))
model.add(Dropout(0.3))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
model.load_weights("./CNN Weights (128 by 128)/model1.h5")
model = Sequential()
model.add(Conv2D(64, (3, 3), activation='relu',input_shape=(128,128,1)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Conv2D(256, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Flatten())
model.add(Dense(512, activation='relu'))
model.add(Dropout(0.3))
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.3))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
history = model.fit(X_train, y_train, validation_data=(X_val,y_val),epochs=50, batch_size=64)
scores = model.evaluate(X_test,y_test)
print("CNN Error: %.2f%%" % (100-scores[1]*100))
plotAUC(history)
Epoch 1/50 142/142 [==============================] - 9s 60ms/step - loss: 2.2314 - accuracy: 0.2613 - val_loss: 2.0446 - val_accuracy: 0.3410 Epoch 2/50 142/142 [==============================] - 8s 57ms/step - loss: 1.4793 - accuracy: 0.5299 - val_loss: 1.1031 - val_accuracy: 0.6567 Epoch 3/50 142/142 [==============================] - 8s 56ms/step - loss: 0.9449 - accuracy: 0.6947 - val_loss: 0.8699 - val_accuracy: 0.7207 Epoch 4/50 142/142 [==============================] - 8s 55ms/step - loss: 0.6310 - accuracy: 0.8000 - val_loss: 0.6473 - val_accuracy: 0.8017 Epoch 5/50 142/142 [==============================] - 8s 55ms/step - loss: 0.3991 - accuracy: 0.8714 - val_loss: 0.4979 - val_accuracy: 0.8537 Epoch 6/50 142/142 [==============================] - 8s 55ms/step - loss: 0.2803 - accuracy: 0.9098 - val_loss: 0.4413 - val_accuracy: 0.8687 Epoch 7/50 142/142 [==============================] - 8s 55ms/step - loss: 0.1943 - accuracy: 0.9392 - val_loss: 0.5473 - val_accuracy: 0.8510 Epoch 8/50 142/142 [==============================] - 8s 55ms/step - loss: 0.1665 - accuracy: 0.9457 - val_loss: 0.4834 - val_accuracy: 0.8660 Epoch 9/50 142/142 [==============================] - 8s 56ms/step - loss: 0.1165 - accuracy: 0.9612 - val_loss: 0.4314 - val_accuracy: 0.8917 Epoch 10/50 142/142 [==============================] - 8s 56ms/step - loss: 0.0980 - accuracy: 0.9680 - val_loss: 0.4314 - val_accuracy: 0.8873 Epoch 11/50 142/142 [==============================] - 8s 56ms/step - loss: 0.0891 - accuracy: 0.9719 - val_loss: 0.6832 - val_accuracy: 0.8493 Epoch 12/50 142/142 [==============================] - 8s 56ms/step - loss: 0.0910 - accuracy: 0.9723 - val_loss: 0.5793 - val_accuracy: 0.8673 Epoch 13/50 142/142 [==============================] - 8s 56ms/step - loss: 0.1338 - accuracy: 0.9616 - val_loss: 0.4721 - val_accuracy: 0.8877 Epoch 14/50 142/142 [==============================] - 8s 56ms/step - loss: 0.0629 - accuracy: 0.9809 - val_loss: 0.6164 - val_accuracy: 0.8583 Epoch 15/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0454 - accuracy: 0.9860 - val_loss: 0.4971 - val_accuracy: 0.8900 Epoch 16/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0339 - accuracy: 0.9887 - val_loss: 0.6623 - val_accuracy: 0.8623 Epoch 17/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0531 - accuracy: 0.9822 - val_loss: 0.4765 - val_accuracy: 0.8927 Epoch 18/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0444 - accuracy: 0.9859 - val_loss: 0.5048 - val_accuracy: 0.8870 Epoch 19/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0404 - accuracy: 0.9860 - val_loss: 0.4999 - val_accuracy: 0.8977 Epoch 20/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0464 - accuracy: 0.9850 - val_loss: 0.4926 - val_accuracy: 0.8893 Epoch 21/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0614 - accuracy: 0.9828 - val_loss: 0.4672 - val_accuracy: 0.8987 Epoch 22/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0362 - accuracy: 0.9887 - val_loss: 0.5123 - val_accuracy: 0.8877 Epoch 23/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0632 - accuracy: 0.9815 - val_loss: 0.4612 - val_accuracy: 0.8950 Epoch 24/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0264 - accuracy: 0.9919 - val_loss: 0.6377 - val_accuracy: 0.8837 Epoch 25/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0333 - accuracy: 0.9890 - val_loss: 0.9799 - val_accuracy: 0.8063 Epoch 26/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0512 - accuracy: 0.9859 - val_loss: 0.5105 - val_accuracy: 0.8953 Epoch 27/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0325 - accuracy: 0.9903 - val_loss: 0.6493 - val_accuracy: 0.8787 Epoch 28/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0353 - accuracy: 0.9884 - val_loss: 0.5084 - val_accuracy: 0.8880 Epoch 29/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0275 - accuracy: 0.9910 - val_loss: 0.5526 - val_accuracy: 0.8843 Epoch 30/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0429 - accuracy: 0.9862 - val_loss: 0.6521 - val_accuracy: 0.8677 Epoch 31/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0395 - accuracy: 0.9888 - val_loss: 0.6375 - val_accuracy: 0.8767 Epoch 32/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0330 - accuracy: 0.9890 - val_loss: 0.6154 - val_accuracy: 0.8797 Epoch 33/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0218 - accuracy: 0.9935 - val_loss: 0.5421 - val_accuracy: 0.8883 Epoch 34/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0228 - accuracy: 0.9927 - val_loss: 0.6110 - val_accuracy: 0.8913 Epoch 35/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0204 - accuracy: 0.9932 - val_loss: 0.5133 - val_accuracy: 0.9063 Epoch 36/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0322 - accuracy: 0.9907 - val_loss: 0.6160 - val_accuracy: 0.8853 Epoch 37/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0330 - accuracy: 0.9895 - val_loss: 0.5918 - val_accuracy: 0.8807 Epoch 38/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0240 - accuracy: 0.9919 - val_loss: 0.5288 - val_accuracy: 0.8917 Epoch 39/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0551 - accuracy: 0.9839 - val_loss: 0.7073 - val_accuracy: 0.8477 Epoch 40/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0674 - accuracy: 0.9788 - val_loss: 0.4724 - val_accuracy: 0.9043 Epoch 41/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0196 - accuracy: 0.9935 - val_loss: 0.4668 - val_accuracy: 0.9047 Epoch 42/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0174 - accuracy: 0.9945 - val_loss: 0.5918 - val_accuracy: 0.8870 Epoch 43/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0275 - accuracy: 0.9915 - val_loss: 0.5860 - val_accuracy: 0.8767 Epoch 44/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0219 - accuracy: 0.9935 - val_loss: 0.5528 - val_accuracy: 0.8917 Epoch 45/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0194 - accuracy: 0.9948 - val_loss: 0.7569 - val_accuracy: 0.8627 Epoch 46/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0180 - accuracy: 0.9946 - val_loss: 0.6357 - val_accuracy: 0.8847 Epoch 47/50 142/142 [==============================] - 8s 56ms/step - loss: 0.0988 - accuracy: 0.9714 - val_loss: 0.7228 - val_accuracy: 0.8617 Epoch 48/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0254 - accuracy: 0.9920 - val_loss: 0.5753 - val_accuracy: 0.8910 Epoch 49/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0264 - accuracy: 0.9908 - val_loss: 0.5804 - val_accuracy: 0.8870 Epoch 50/50 142/142 [==============================] - 8s 57ms/step - loss: 0.0233 - accuracy: 0.9938 - val_loss: 0.6358 - val_accuracy: 0.8803 94/94 [==============================] - 1s 9ms/step - loss: 0.5993 - accuracy: 0.8803 CNN Error: 11.97%
model = Sequential()
model.add(Conv2D(64, (3, 3), activation='relu',input_shape=(128,128,1)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(256, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(512, activation='relu'))
model.add(Dropout(0.4))
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.4))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
history = model.fit(X_train, y_train, validation_data=(X_val,y_val),epochs=50, batch_size=64)
model.save_weights("./CNN Weights (128 by 128)/model2.h5")
scores = model.evaluate(X_test,y_test)
print("CNN Error: %.2f%%" % (100-scores[1]*100))
plotAUC(history)
Epoch 1/50 142/142 [==============================] - 10s 66ms/step - loss: 2.5624 - accuracy: 0.1253 - val_loss: 2.4753 - val_accuracy: 0.1310 Epoch 2/50 142/142 [==============================] - 9s 63ms/step - loss: 1.9728 - accuracy: 0.3609 - val_loss: 1.6371 - val_accuracy: 0.4887 Epoch 3/50 142/142 [==============================] - 9s 63ms/step - loss: 1.5005 - accuracy: 0.5222 - val_loss: 1.2568 - val_accuracy: 0.6043 Epoch 4/50 142/142 [==============================] - 9s 63ms/step - loss: 1.1611 - accuracy: 0.6355 - val_loss: 0.9539 - val_accuracy: 0.6973 Epoch 5/50 142/142 [==============================] - 9s 63ms/step - loss: 0.9075 - accuracy: 0.7117 - val_loss: 0.8076 - val_accuracy: 0.7457 Epoch 6/50 142/142 [==============================] - 9s 63ms/step - loss: 0.7153 - accuracy: 0.7724 - val_loss: 0.6058 - val_accuracy: 0.8187 Epoch 7/50 142/142 [==============================] - 9s 63ms/step - loss: 0.5699 - accuracy: 0.8233 - val_loss: 0.4789 - val_accuracy: 0.8523 Epoch 8/50 142/142 [==============================] - 9s 63ms/step - loss: 0.4924 - accuracy: 0.8437 - val_loss: 0.5204 - val_accuracy: 0.8477 Epoch 9/50 142/142 [==============================] - 9s 63ms/step - loss: 0.4080 - accuracy: 0.8691 - val_loss: 0.5018 - val_accuracy: 0.8443 Epoch 10/50 142/142 [==============================] - 9s 63ms/step - loss: 0.3421 - accuracy: 0.8886 - val_loss: 0.5209 - val_accuracy: 0.8533 Epoch 11/50 142/142 [==============================] - 9s 63ms/step - loss: 0.3248 - accuracy: 0.8965 - val_loss: 0.4764 - val_accuracy: 0.8537 Epoch 12/50 142/142 [==============================] - 9s 63ms/step - loss: 0.2690 - accuracy: 0.9143 - val_loss: 0.4030 - val_accuracy: 0.8780 Epoch 13/50 142/142 [==============================] - 9s 63ms/step - loss: 0.2317 - accuracy: 0.9273 - val_loss: 0.3803 - val_accuracy: 0.8917 Epoch 14/50 142/142 [==============================] - 9s 63ms/step - loss: 0.2049 - accuracy: 0.9353 - val_loss: 0.4822 - val_accuracy: 0.8663 Epoch 15/50 142/142 [==============================] - 9s 63ms/step - loss: 0.2006 - accuracy: 0.9369 - val_loss: 0.4180 - val_accuracy: 0.8867 Epoch 16/50 142/142 [==============================] - 9s 63ms/step - loss: 0.1981 - accuracy: 0.9350 - val_loss: 0.3746 - val_accuracy: 0.8960 Epoch 17/50 142/142 [==============================] - 9s 63ms/step - loss: 0.1772 - accuracy: 0.9435 - val_loss: 0.3676 - val_accuracy: 0.8950 Epoch 18/50 142/142 [==============================] - 9s 63ms/step - loss: 0.1739 - accuracy: 0.9465 - val_loss: 0.4823 - val_accuracy: 0.8747 Epoch 19/50 142/142 [==============================] - 9s 63ms/step - loss: 0.1978 - accuracy: 0.9374 - val_loss: 0.4182 - val_accuracy: 0.8893 Epoch 20/50 142/142 [==============================] - 9s 63ms/step - loss: 0.1627 - accuracy: 0.9494 - val_loss: 0.3997 - val_accuracy: 0.8920 Epoch 21/50 142/142 [==============================] - 9s 63ms/step - loss: 0.1450 - accuracy: 0.9546 - val_loss: 0.3868 - val_accuracy: 0.8950 Epoch 22/50 142/142 [==============================] - 9s 63ms/step - loss: 0.1184 - accuracy: 0.9605 - val_loss: 0.3508 - val_accuracy: 0.9077 Epoch 23/50 142/142 [==============================] - 9s 63ms/step - loss: 0.1339 - accuracy: 0.9549 - val_loss: 0.3639 - val_accuracy: 0.9060 Epoch 24/50 142/142 [==============================] - 9s 63ms/step - loss: 0.1430 - accuracy: 0.9557 - val_loss: 0.5005 - val_accuracy: 0.8770 Epoch 25/50 142/142 [==============================] - 9s 63ms/step - loss: 0.1193 - accuracy: 0.9634 - val_loss: 0.3953 - val_accuracy: 0.9057 Epoch 26/50 142/142 [==============================] - 9s 63ms/step - loss: 0.1281 - accuracy: 0.9616 - val_loss: 0.3870 - val_accuracy: 0.8990 Epoch 27/50 142/142 [==============================] - 9s 63ms/step - loss: 0.1101 - accuracy: 0.9672 - val_loss: 0.4204 - val_accuracy: 0.8923 Epoch 28/50 142/142 [==============================] - 9s 63ms/step - loss: 0.1120 - accuracy: 0.9657 - val_loss: 0.3896 - val_accuracy: 0.8990 Epoch 29/50 142/142 [==============================] - 9s 63ms/step - loss: 0.1397 - accuracy: 0.9541 - val_loss: 0.4451 - val_accuracy: 0.8823 Epoch 30/50 142/142 [==============================] - 9s 63ms/step - loss: 0.1203 - accuracy: 0.9627 - val_loss: 0.5468 - val_accuracy: 0.8633 Epoch 31/50 142/142 [==============================] - 9s 63ms/step - loss: 0.1106 - accuracy: 0.9670 - val_loss: 0.4898 - val_accuracy: 0.8787 Epoch 32/50 142/142 [==============================] - 9s 63ms/step - loss: 0.1342 - accuracy: 0.9578 - val_loss: 0.3819 - val_accuracy: 0.9040 Epoch 33/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0830 - accuracy: 0.9734 - val_loss: 0.3956 - val_accuracy: 0.9060 Epoch 34/50 142/142 [==============================] - 9s 64ms/step - loss: 0.0813 - accuracy: 0.9735 - val_loss: 0.4085 - val_accuracy: 0.9067 Epoch 35/50 142/142 [==============================] - 9s 66ms/step - loss: 0.1038 - accuracy: 0.9670 - val_loss: 0.4003 - val_accuracy: 0.9027 Epoch 36/50 142/142 [==============================] - 9s 64ms/step - loss: 0.0998 - accuracy: 0.9704 - val_loss: 0.4241 - val_accuracy: 0.8940 Epoch 37/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0821 - accuracy: 0.9723 - val_loss: 0.3779 - val_accuracy: 0.9110 Epoch 38/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0694 - accuracy: 0.9782 - val_loss: 0.4344 - val_accuracy: 0.8997 Epoch 39/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0853 - accuracy: 0.9732 - val_loss: 0.6170 - val_accuracy: 0.8710 Epoch 40/50 142/142 [==============================] - 9s 63ms/step - loss: 0.1313 - accuracy: 0.9622 - val_loss: 0.4119 - val_accuracy: 0.8977 Epoch 41/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0960 - accuracy: 0.9701 - val_loss: 0.4522 - val_accuracy: 0.8927 Epoch 42/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0759 - accuracy: 0.9754 - val_loss: 0.4420 - val_accuracy: 0.9003 Epoch 43/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0828 - accuracy: 0.9734 - val_loss: 0.4200 - val_accuracy: 0.9057 Epoch 44/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0817 - accuracy: 0.9743 - val_loss: 0.4871 - val_accuracy: 0.8837 Epoch 45/50 142/142 [==============================] - 9s 63ms/step - loss: 0.1217 - accuracy: 0.9643 - val_loss: 0.4099 - val_accuracy: 0.8990 Epoch 46/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0837 - accuracy: 0.9734 - val_loss: 0.5811 - val_accuracy: 0.8623 Epoch 47/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0651 - accuracy: 0.9785 - val_loss: 0.4444 - val_accuracy: 0.8913 Epoch 48/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0617 - accuracy: 0.9807 - val_loss: 0.3917 - val_accuracy: 0.9070 Epoch 49/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0684 - accuracy: 0.9803 - val_loss: 0.3941 - val_accuracy: 0.9063 Epoch 50/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0689 - accuracy: 0.9778 - val_loss: 0.4472 - val_accuracy: 0.8977 94/94 [==============================] - 1s 9ms/step - loss: 0.4286 - accuracy: 0.9047 CNN Error: 9.53%
model = Sequential()
model.add(Conv2D(64, (3, 3), activation='relu',input_shape=(128,128,1)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(256, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(512, activation='relu'))
model.add(Dropout(0.4))
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.4))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
model.load_weights("./CNN Weights (128 by 128)/model2.h5")
model = Sequential()
model.add(Conv2D(32, (3, 3), activation='relu',input_shape=(128,128,1)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Conv2D(64, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Flatten())
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.4))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
history = model.fit(X_train, y_train, validation_data=(X_val,y_val),epochs=50, batch_size=64)
scores = model.evaluate(X_test,y_test)
print("CNN Error: %.2f%%" % (100-scores[1]*100))
plotAUC(history)
Epoch 1/50 142/142 [==============================] - 6s 32ms/step - loss: 2.0570 - accuracy: 0.3329 - val_loss: 1.9072 - val_accuracy: 0.3930 Epoch 2/50 142/142 [==============================] - 4s 28ms/step - loss: 1.3126 - accuracy: 0.5915 - val_loss: 1.1339 - val_accuracy: 0.6503 Epoch 3/50 142/142 [==============================] - 4s 28ms/step - loss: 0.9378 - accuracy: 0.7077 - val_loss: 0.8430 - val_accuracy: 0.7257 Epoch 4/50 142/142 [==============================] - 4s 28ms/step - loss: 0.6491 - accuracy: 0.7913 - val_loss: 0.6181 - val_accuracy: 0.8093 Epoch 5/50 142/142 [==============================] - 4s 28ms/step - loss: 0.4644 - accuracy: 0.8501 - val_loss: 0.5436 - val_accuracy: 0.8370 Epoch 6/50 142/142 [==============================] - 4s 28ms/step - loss: 0.3293 - accuracy: 0.8960 - val_loss: 0.5447 - val_accuracy: 0.8453 Epoch 7/50 142/142 [==============================] - 4s 28ms/step - loss: 0.2683 - accuracy: 0.9111 - val_loss: 0.4947 - val_accuracy: 0.8587 Epoch 8/50 142/142 [==============================] - 4s 29ms/step - loss: 0.2039 - accuracy: 0.9344 - val_loss: 0.5082 - val_accuracy: 0.8603 Epoch 9/50 142/142 [==============================] - 4s 28ms/step - loss: 0.1604 - accuracy: 0.9471 - val_loss: 0.6340 - val_accuracy: 0.8280 Epoch 10/50 142/142 [==============================] - 4s 29ms/step - loss: 0.1830 - accuracy: 0.9410 - val_loss: 0.5312 - val_accuracy: 0.8570 Epoch 11/50 142/142 [==============================] - 4s 29ms/step - loss: 0.1113 - accuracy: 0.9632 - val_loss: 0.6433 - val_accuracy: 0.8490 Epoch 12/50 142/142 [==============================] - 4s 29ms/step - loss: 0.1139 - accuracy: 0.9637 - val_loss: 0.5440 - val_accuracy: 0.8630 Epoch 13/50 142/142 [==============================] - 4s 29ms/step - loss: 0.1055 - accuracy: 0.9629 - val_loss: 0.5925 - val_accuracy: 0.8500 Epoch 14/50 142/142 [==============================] - 4s 28ms/step - loss: 0.0787 - accuracy: 0.9721 - val_loss: 0.6505 - val_accuracy: 0.8610 Epoch 15/50 142/142 [==============================] - 4s 29ms/step - loss: 0.0737 - accuracy: 0.9747 - val_loss: 0.4985 - val_accuracy: 0.8873 Epoch 16/50 142/142 [==============================] - 4s 29ms/step - loss: 0.0805 - accuracy: 0.9737 - val_loss: 0.4743 - val_accuracy: 0.8807 Epoch 17/50 142/142 [==============================] - 4s 28ms/step - loss: 0.0832 - accuracy: 0.9735 - val_loss: 0.5212 - val_accuracy: 0.8783 Epoch 18/50 142/142 [==============================] - 4s 28ms/step - loss: 0.0568 - accuracy: 0.9831 - val_loss: 0.5473 - val_accuracy: 0.8820 Epoch 19/50 142/142 [==============================] - 4s 29ms/step - loss: 0.0596 - accuracy: 0.9813 - val_loss: 0.5410 - val_accuracy: 0.8820 Epoch 20/50 142/142 [==============================] - 4s 29ms/step - loss: 0.0682 - accuracy: 0.9773 - val_loss: 0.5793 - val_accuracy: 0.8757 Epoch 21/50 142/142 [==============================] - 4s 29ms/step - loss: 0.0538 - accuracy: 0.9813 - val_loss: 0.6512 - val_accuracy: 0.8707 Epoch 22/50 142/142 [==============================] - 4s 29ms/step - loss: 0.0492 - accuracy: 0.9826 - val_loss: 0.7526 - val_accuracy: 0.8583 Epoch 23/50 142/142 [==============================] - 4s 28ms/step - loss: 0.0605 - accuracy: 0.9813 - val_loss: 0.6372 - val_accuracy: 0.8750 Epoch 24/50 142/142 [==============================] - 4s 28ms/step - loss: 0.0468 - accuracy: 0.9859 - val_loss: 0.6173 - val_accuracy: 0.8870 Epoch 25/50 142/142 [==============================] - 4s 28ms/step - loss: 0.0551 - accuracy: 0.9827 - val_loss: 0.7001 - val_accuracy: 0.8587 Epoch 26/50 142/142 [==============================] - 4s 29ms/step - loss: 0.0704 - accuracy: 0.9783 - val_loss: 0.7478 - val_accuracy: 0.8547 Epoch 27/50 142/142 [==============================] - 4s 29ms/step - loss: 0.0584 - accuracy: 0.9804 - val_loss: 0.6692 - val_accuracy: 0.8670 Epoch 28/50 142/142 [==============================] - 4s 28ms/step - loss: 0.0446 - accuracy: 0.9859 - val_loss: 0.5792 - val_accuracy: 0.8820 Epoch 29/50 142/142 [==============================] - 4s 28ms/step - loss: 0.0475 - accuracy: 0.9843 - val_loss: 0.6755 - val_accuracy: 0.8693 Epoch 30/50 142/142 [==============================] - 4s 28ms/step - loss: 0.0278 - accuracy: 0.9910 - val_loss: 0.6274 - val_accuracy: 0.8807 Epoch 31/50 142/142 [==============================] - 4s 27ms/step - loss: 0.0698 - accuracy: 0.9791 - val_loss: 0.7582 - val_accuracy: 0.8530 Epoch 32/50 142/142 [==============================] - 4s 27ms/step - loss: 0.0470 - accuracy: 0.9845 - val_loss: 0.6423 - val_accuracy: 0.8767 Epoch 33/50 142/142 [==============================] - 4s 27ms/step - loss: 0.0524 - accuracy: 0.9825 - val_loss: 0.6244 - val_accuracy: 0.8840 Epoch 34/50 142/142 [==============================] - 4s 27ms/step - loss: 0.0322 - accuracy: 0.9888 - val_loss: 0.8875 - val_accuracy: 0.8460 Epoch 35/50 142/142 [==============================] - 4s 27ms/step - loss: 0.2068 - accuracy: 0.9395 - val_loss: 0.8301 - val_accuracy: 0.8340 Epoch 36/50 142/142 [==============================] - 4s 28ms/step - loss: 0.0504 - accuracy: 0.9835 - val_loss: 0.6616 - val_accuracy: 0.8687 Epoch 37/50 142/142 [==============================] - 4s 27ms/step - loss: 0.0476 - accuracy: 0.9858 - val_loss: 0.7482 - val_accuracy: 0.8590 Epoch 38/50 142/142 [==============================] - 4s 27ms/step - loss: 0.0400 - accuracy: 0.9868 - val_loss: 0.8112 - val_accuracy: 0.8573 Epoch 39/50 142/142 [==============================] - 4s 27ms/step - loss: 0.0398 - accuracy: 0.9881 - val_loss: 0.6541 - val_accuracy: 0.8763 Epoch 40/50 142/142 [==============================] - 4s 27ms/step - loss: 0.0275 - accuracy: 0.9905 - val_loss: 0.7334 - val_accuracy: 0.8747 Epoch 41/50 142/142 [==============================] - 4s 27ms/step - loss: 0.0215 - accuracy: 0.9928 - val_loss: 0.7647 - val_accuracy: 0.8687 Epoch 42/50 142/142 [==============================] - 4s 27ms/step - loss: 0.0181 - accuracy: 0.9939 - val_loss: 0.8312 - val_accuracy: 0.8760 Epoch 43/50 142/142 [==============================] - 4s 27ms/step - loss: 0.0315 - accuracy: 0.9895 - val_loss: 0.7652 - val_accuracy: 0.8653 Epoch 44/50 142/142 [==============================] - 4s 27ms/step - loss: 0.0641 - accuracy: 0.9801 - val_loss: 0.7082 - val_accuracy: 0.8673 Epoch 45/50 142/142 [==============================] - 4s 27ms/step - loss: 0.0213 - accuracy: 0.9938 - val_loss: 0.8612 - val_accuracy: 0.8670 Epoch 46/50 142/142 [==============================] - 4s 27ms/step - loss: 0.0209 - accuracy: 0.9930 - val_loss: 0.8441 - val_accuracy: 0.8707 Epoch 47/50 142/142 [==============================] - 4s 27ms/step - loss: 0.0194 - accuracy: 0.9932 - val_loss: 0.8391 - val_accuracy: 0.8713 Epoch 48/50 142/142 [==============================] - 4s 28ms/step - loss: 0.0201 - accuracy: 0.9931 - val_loss: 0.7398 - val_accuracy: 0.8813 Epoch 49/50 142/142 [==============================] - 4s 28ms/step - loss: 0.0382 - accuracy: 0.9876 - val_loss: 0.8117 - val_accuracy: 0.8700 Epoch 50/50 142/142 [==============================] - 4s 27ms/step - loss: 0.0362 - accuracy: 0.9888 - val_loss: 0.8850 - val_accuracy: 0.8550 94/94 [==============================] - 1s 7ms/step - loss: 0.7889 - accuracy: 0.8543 CNN Error: 14.57%
model = Sequential()
model.add(Conv2D(32, (3, 3), activation='relu',input_shape=(128,128,1)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(64, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.4))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
history = model.fit(X_train, y_train, validation_data=(X_val,y_val),epochs=50, batch_size=64)
model.save_weights("./CNN Weights (128 by 128)/model3.h5")
scores = model.evaluate(X_test,y_test)
print("CNN Error: %.2f%%" % (100-scores[1]*100))
plotAUC(history)
Epoch 1/50 142/142 [==============================] - 8s 37ms/step - loss: 2.4346 - accuracy: 0.1938 - val_loss: 2.1699 - val_accuracy: 0.3087 Epoch 2/50 142/142 [==============================] - 5s 32ms/step - loss: 1.8106 - accuracy: 0.4205 - val_loss: 1.7204 - val_accuracy: 0.4530 Epoch 3/50 142/142 [==============================] - 5s 32ms/step - loss: 1.4363 - accuracy: 0.5409 - val_loss: 1.5412 - val_accuracy: 0.5013 Epoch 4/50 142/142 [==============================] - 5s 32ms/step - loss: 1.1248 - accuracy: 0.6356 - val_loss: 0.9706 - val_accuracy: 0.6943 Epoch 5/50 142/142 [==============================] - 5s 33ms/step - loss: 0.9090 - accuracy: 0.7023 - val_loss: 0.7986 - val_accuracy: 0.7403 Epoch 6/50 142/142 [==============================] - 5s 33ms/step - loss: 0.7272 - accuracy: 0.7648 - val_loss: 0.6618 - val_accuracy: 0.8063 Epoch 7/50 142/142 [==============================] - 5s 33ms/step - loss: 0.6122 - accuracy: 0.7987 - val_loss: 0.5831 - val_accuracy: 0.8113 Epoch 8/50 142/142 [==============================] - 5s 33ms/step - loss: 0.5145 - accuracy: 0.8309 - val_loss: 0.5752 - val_accuracy: 0.8227 Epoch 9/50 142/142 [==============================] - 5s 32ms/step - loss: 0.4574 - accuracy: 0.8543 - val_loss: 0.5509 - val_accuracy: 0.8320 Epoch 10/50 142/142 [==============================] - 4s 32ms/step - loss: 0.3795 - accuracy: 0.8733 - val_loss: 0.5477 - val_accuracy: 0.8340 Epoch 11/50 142/142 [==============================] - 5s 32ms/step - loss: 0.3749 - accuracy: 0.8774 - val_loss: 0.4873 - val_accuracy: 0.8547 Epoch 12/50 142/142 [==============================] - 4s 32ms/step - loss: 0.3070 - accuracy: 0.8981 - val_loss: 0.4618 - val_accuracy: 0.8683 Epoch 13/50 142/142 [==============================] - 5s 32ms/step - loss: 0.2883 - accuracy: 0.9011 - val_loss: 0.4778 - val_accuracy: 0.8623 Epoch 14/50 142/142 [==============================] - 5s 32ms/step - loss: 0.2475 - accuracy: 0.9149 - val_loss: 0.4755 - val_accuracy: 0.8660 Epoch 15/50 142/142 [==============================] - 5s 32ms/step - loss: 0.2351 - accuracy: 0.9195 - val_loss: 0.4748 - val_accuracy: 0.8713 Epoch 16/50 142/142 [==============================] - 5s 32ms/step - loss: 0.2098 - accuracy: 0.9293 - val_loss: 0.4826 - val_accuracy: 0.8700 Epoch 17/50 142/142 [==============================] - 5s 32ms/step - loss: 0.1881 - accuracy: 0.9348 - val_loss: 0.4459 - val_accuracy: 0.8743 Epoch 18/50 142/142 [==============================] - 5s 32ms/step - loss: 0.1904 - accuracy: 0.9363 - val_loss: 0.4652 - val_accuracy: 0.8733 Epoch 19/50 142/142 [==============================] - 5s 32ms/step - loss: 0.2303 - accuracy: 0.9220 - val_loss: 0.5599 - val_accuracy: 0.8440 Epoch 20/50 142/142 [==============================] - 5s 32ms/step - loss: 0.2044 - accuracy: 0.9337 - val_loss: 0.4865 - val_accuracy: 0.8717 Epoch 21/50 142/142 [==============================] - 5s 32ms/step - loss: 0.1545 - accuracy: 0.9482 - val_loss: 0.5159 - val_accuracy: 0.8630 Epoch 22/50 142/142 [==============================] - 5s 32ms/step - loss: 0.1553 - accuracy: 0.9484 - val_loss: 0.4524 - val_accuracy: 0.8833 Epoch 23/50 142/142 [==============================] - 5s 32ms/step - loss: 0.1373 - accuracy: 0.9528 - val_loss: 0.4030 - val_accuracy: 0.8907 Epoch 24/50 142/142 [==============================] - 5s 32ms/step - loss: 0.1296 - accuracy: 0.9574 - val_loss: 0.4708 - val_accuracy: 0.8797 Epoch 25/50 142/142 [==============================] - 5s 32ms/step - loss: 0.1316 - accuracy: 0.9555 - val_loss: 0.4125 - val_accuracy: 0.8957 Epoch 26/50 142/142 [==============================] - 5s 32ms/step - loss: 0.1213 - accuracy: 0.9577 - val_loss: 0.4323 - val_accuracy: 0.8887 Epoch 27/50 142/142 [==============================] - 5s 33ms/step - loss: 0.1233 - accuracy: 0.9585 - val_loss: 0.4514 - val_accuracy: 0.8927 Epoch 28/50 142/142 [==============================] - 5s 33ms/step - loss: 0.1356 - accuracy: 0.9546 - val_loss: 0.3775 - val_accuracy: 0.8973 Epoch 29/50 142/142 [==============================] - 5s 32ms/step - loss: 0.1221 - accuracy: 0.9570 - val_loss: 0.4638 - val_accuracy: 0.8830 Epoch 30/50 142/142 [==============================] - 5s 32ms/step - loss: 0.1129 - accuracy: 0.9609 - val_loss: 0.6118 - val_accuracy: 0.8697 Epoch 31/50 142/142 [==============================] - 5s 32ms/step - loss: 0.1091 - accuracy: 0.9637 - val_loss: 0.5502 - val_accuracy: 0.8757 Epoch 32/50 142/142 [==============================] - 5s 33ms/step - loss: 0.1124 - accuracy: 0.9619 - val_loss: 0.4343 - val_accuracy: 0.8907 Epoch 33/50 142/142 [==============================] - 5s 32ms/step - loss: 0.1108 - accuracy: 0.9621 - val_loss: 0.4142 - val_accuracy: 0.8953 Epoch 34/50 142/142 [==============================] - 5s 32ms/step - loss: 0.1000 - accuracy: 0.9661 - val_loss: 0.5595 - val_accuracy: 0.8753 Epoch 35/50 142/142 [==============================] - 5s 32ms/step - loss: 0.1438 - accuracy: 0.9531 - val_loss: 0.4606 - val_accuracy: 0.8867 Epoch 36/50 142/142 [==============================] - 5s 33ms/step - loss: 0.0912 - accuracy: 0.9692 - val_loss: 0.5568 - val_accuracy: 0.8800 Epoch 37/50 142/142 [==============================] - 5s 32ms/step - loss: 0.1128 - accuracy: 0.9606 - val_loss: 0.4484 - val_accuracy: 0.8893 Epoch 38/50 142/142 [==============================] - 5s 32ms/step - loss: 0.1217 - accuracy: 0.9572 - val_loss: 0.7091 - val_accuracy: 0.8457 Epoch 39/50 142/142 [==============================] - 5s 32ms/step - loss: 0.1078 - accuracy: 0.9644 - val_loss: 0.4544 - val_accuracy: 0.9007 Epoch 40/50 142/142 [==============================] - 5s 32ms/step - loss: 0.0917 - accuracy: 0.9702 - val_loss: 0.4800 - val_accuracy: 0.8877 Epoch 41/50 142/142 [==============================] - 5s 32ms/step - loss: 0.0758 - accuracy: 0.9757 - val_loss: 0.4089 - val_accuracy: 0.9000 Epoch 42/50 142/142 [==============================] - 5s 33ms/step - loss: 0.0883 - accuracy: 0.9703 - val_loss: 0.4534 - val_accuracy: 0.8927 Epoch 43/50 142/142 [==============================] - 5s 32ms/step - loss: 0.0867 - accuracy: 0.9726 - val_loss: 0.4685 - val_accuracy: 0.8917 Epoch 44/50 142/142 [==============================] - 5s 32ms/step - loss: 0.0715 - accuracy: 0.9750 - val_loss: 0.4401 - val_accuracy: 0.9000 Epoch 45/50 142/142 [==============================] - 5s 32ms/step - loss: 0.0705 - accuracy: 0.9759 - val_loss: 0.4436 - val_accuracy: 0.8957 Epoch 46/50 142/142 [==============================] - 5s 32ms/step - loss: 0.1052 - accuracy: 0.9647 - val_loss: 0.4595 - val_accuracy: 0.8923 Epoch 47/50 142/142 [==============================] - 5s 33ms/step - loss: 0.0631 - accuracy: 0.9787 - val_loss: 0.4841 - val_accuracy: 0.8953 Epoch 48/50 142/142 [==============================] - 5s 32ms/step - loss: 0.0722 - accuracy: 0.9751 - val_loss: 0.4429 - val_accuracy: 0.9020 Epoch 49/50 142/142 [==============================] - 5s 33ms/step - loss: 0.0617 - accuracy: 0.9791 - val_loss: 0.5508 - val_accuracy: 0.8930 Epoch 50/50 142/142 [==============================] - 5s 32ms/step - loss: 0.0725 - accuracy: 0.9759 - val_loss: 0.6426 - val_accuracy: 0.8717 94/94 [==============================] - 1s 8ms/step - loss: 0.6255 - accuracy: 0.8733 CNN Error: 12.67%
model.summary()
Model: "sequential"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
conv2d (Conv2D) (None, 126, 126, 32) 320
max_pooling2d (MaxPooling2D (None, 63, 63, 32) 0
)
dropout (Dropout) (None, 63, 63, 32) 0
conv2d_1 (Conv2D) (None, 61, 61, 64) 18496
max_pooling2d_1 (MaxPooling (None, 30, 30, 64) 0
2D)
dropout_1 (Dropout) (None, 30, 30, 64) 0
conv2d_2 (Conv2D) (None, 28, 28, 128) 73856
max_pooling2d_2 (MaxPooling (None, 14, 14, 128) 0
2D)
dropout_2 (Dropout) (None, 14, 14, 128) 0
flatten (Flatten) (None, 25088) 0
dense (Dense) (None, 256) 6422784
dropout_3 (Dropout) (None, 256) 0
dense_1 (Dense) (None, 15) 3855
=================================================================
Total params: 6,519,311
Trainable params: 6,519,311
Non-trainable params: 0
_________________________________________________________________
model = Sequential()
model.add(Conv2D(32, (3, 3), activation='relu',input_shape=(128,128,1)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(64, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.4))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
model.load_weights("./CNN Weights (128 by 128)/model3.h5")
model = Sequential()
model.add(Conv2D(32, (3, 3), activation='relu',input_shape=(128,128,1)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(64, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.3))
model.add(Dense(128, activation='relu'))
model.add(Dropout(0.3))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
history = model.fit(X_train, y_train, validation_data=(X_val,y_val),epochs=50, batch_size=64)
scores = model.evaluate(X_test,y_test)
print("CNN Error: %.2f%%" % (100-scores[1]*100))
plotAUC(history)
Epoch 1/50 142/142 [==============================] - 6s 34ms/step - loss: 2.4773 - accuracy: 0.1608 - val_loss: 2.1693 - val_accuracy: 0.3207 Epoch 2/50 142/142 [==============================] - 5s 32ms/step - loss: 1.8187 - accuracy: 0.4116 - val_loss: 1.5705 - val_accuracy: 0.4913 Epoch 3/50 142/142 [==============================] - 5s 32ms/step - loss: 1.4427 - accuracy: 0.5336 - val_loss: 1.2905 - val_accuracy: 0.5920 Epoch 4/50 142/142 [==============================] - 5s 32ms/step - loss: 1.2025 - accuracy: 0.6131 - val_loss: 1.0292 - val_accuracy: 0.6800 Epoch 5/50 142/142 [==============================] - 5s 33ms/step - loss: 0.9936 - accuracy: 0.6837 - val_loss: 0.8290 - val_accuracy: 0.7460 Epoch 6/50 142/142 [==============================] - 5s 32ms/step - loss: 0.8146 - accuracy: 0.7401 - val_loss: 0.7248 - val_accuracy: 0.7757 Epoch 7/50 142/142 [==============================] - 5s 32ms/step - loss: 0.6606 - accuracy: 0.7931 - val_loss: 0.6169 - val_accuracy: 0.8120 Epoch 8/50 142/142 [==============================] - 5s 33ms/step - loss: 0.5487 - accuracy: 0.8209 - val_loss: 0.5829 - val_accuracy: 0.8183 Epoch 9/50 142/142 [==============================] - 5s 33ms/step - loss: 0.5273 - accuracy: 0.8301 - val_loss: 0.5874 - val_accuracy: 0.8153 Epoch 10/50 142/142 [==============================] - 5s 33ms/step - loss: 0.4469 - accuracy: 0.8580 - val_loss: 0.4445 - val_accuracy: 0.8693 Epoch 11/50 142/142 [==============================] - 5s 32ms/step - loss: 0.3817 - accuracy: 0.8789 - val_loss: 0.4105 - val_accuracy: 0.8750 Epoch 12/50 142/142 [==============================] - 4s 32ms/step - loss: 0.3113 - accuracy: 0.8975 - val_loss: 0.4047 - val_accuracy: 0.8777 Epoch 13/50 142/142 [==============================] - 4s 31ms/step - loss: 0.2689 - accuracy: 0.9157 - val_loss: 0.4700 - val_accuracy: 0.8643 Epoch 14/50 142/142 [==============================] - 4s 31ms/step - loss: 0.2680 - accuracy: 0.9128 - val_loss: 0.5721 - val_accuracy: 0.8360 Epoch 15/50 142/142 [==============================] - 4s 31ms/step - loss: 0.2304 - accuracy: 0.9257 - val_loss: 0.4780 - val_accuracy: 0.8710 Epoch 16/50 142/142 [==============================] - 4s 31ms/step - loss: 0.2561 - accuracy: 0.9181 - val_loss: 0.4851 - val_accuracy: 0.8680 Epoch 17/50 142/142 [==============================] - 4s 31ms/step - loss: 0.2037 - accuracy: 0.9342 - val_loss: 0.4127 - val_accuracy: 0.8797 Epoch 18/50 142/142 [==============================] - 4s 31ms/step - loss: 0.1654 - accuracy: 0.9454 - val_loss: 0.4070 - val_accuracy: 0.8843 Epoch 19/50 142/142 [==============================] - 4s 31ms/step - loss: 0.1937 - accuracy: 0.9360 - val_loss: 0.4068 - val_accuracy: 0.8893 Epoch 20/50 142/142 [==============================] - 4s 31ms/step - loss: 0.1649 - accuracy: 0.9459 - val_loss: 0.3681 - val_accuracy: 0.9010 Epoch 21/50 142/142 [==============================] - 4s 31ms/step - loss: 0.1471 - accuracy: 0.9513 - val_loss: 0.4340 - val_accuracy: 0.8813 Epoch 22/50 142/142 [==============================] - 4s 31ms/step - loss: 0.1463 - accuracy: 0.9559 - val_loss: 0.4348 - val_accuracy: 0.8970 Epoch 23/50 142/142 [==============================] - 4s 31ms/step - loss: 0.1473 - accuracy: 0.9534 - val_loss: 0.3653 - val_accuracy: 0.9027 Epoch 24/50 142/142 [==============================] - 4s 31ms/step - loss: 0.1324 - accuracy: 0.9572 - val_loss: 0.4355 - val_accuracy: 0.8900 Epoch 25/50 142/142 [==============================] - 4s 31ms/step - loss: 0.1482 - accuracy: 0.9530 - val_loss: 0.4083 - val_accuracy: 0.8913 Epoch 26/50 142/142 [==============================] - 4s 31ms/step - loss: 0.1275 - accuracy: 0.9571 - val_loss: 0.4642 - val_accuracy: 0.8867 Epoch 27/50 142/142 [==============================] - 4s 31ms/step - loss: 0.1255 - accuracy: 0.9610 - val_loss: 0.3827 - val_accuracy: 0.9050 Epoch 28/50 142/142 [==============================] - 4s 31ms/step - loss: 0.1216 - accuracy: 0.9616 - val_loss: 0.3890 - val_accuracy: 0.9000 Epoch 29/50 142/142 [==============================] - 4s 31ms/step - loss: 0.1211 - accuracy: 0.9620 - val_loss: 0.4368 - val_accuracy: 0.8910 Epoch 30/50 142/142 [==============================] - 4s 31ms/step - loss: 0.1080 - accuracy: 0.9667 - val_loss: 0.5428 - val_accuracy: 0.8697 Epoch 31/50 142/142 [==============================] - 4s 31ms/step - loss: 0.1911 - accuracy: 0.9426 - val_loss: 0.3654 - val_accuracy: 0.9067 Epoch 32/50 142/142 [==============================] - 4s 31ms/step - loss: 0.1061 - accuracy: 0.9690 - val_loss: 0.3690 - val_accuracy: 0.9103 Epoch 33/50 142/142 [==============================] - 4s 31ms/step - loss: 0.0940 - accuracy: 0.9705 - val_loss: 0.3987 - val_accuracy: 0.8990 Epoch 34/50 142/142 [==============================] - 4s 32ms/step - loss: 0.0988 - accuracy: 0.9681 - val_loss: 0.3813 - val_accuracy: 0.9080 Epoch 35/50 142/142 [==============================] - 4s 31ms/step - loss: 0.1100 - accuracy: 0.9665 - val_loss: 0.4072 - val_accuracy: 0.8947 Epoch 36/50 142/142 [==============================] - 4s 32ms/step - loss: 0.0906 - accuracy: 0.9720 - val_loss: 0.3835 - val_accuracy: 0.9093 Epoch 37/50 142/142 [==============================] - 4s 31ms/step - loss: 0.0702 - accuracy: 0.9761 - val_loss: 0.3920 - val_accuracy: 0.9060 Epoch 38/50 142/142 [==============================] - 4s 31ms/step - loss: 0.0979 - accuracy: 0.9708 - val_loss: 0.4382 - val_accuracy: 0.8917 Epoch 39/50 142/142 [==============================] - 4s 31ms/step - loss: 0.0766 - accuracy: 0.9754 - val_loss: 0.4767 - val_accuracy: 0.8967 Epoch 40/50 142/142 [==============================] - 4s 31ms/step - loss: 0.0907 - accuracy: 0.9721 - val_loss: 0.4157 - val_accuracy: 0.9040 Epoch 41/50 142/142 [==============================] - 4s 31ms/step - loss: 0.0756 - accuracy: 0.9751 - val_loss: 0.4319 - val_accuracy: 0.9027 Epoch 42/50 142/142 [==============================] - 4s 31ms/step - loss: 0.0969 - accuracy: 0.9696 - val_loss: 0.3440 - val_accuracy: 0.9110 Epoch 43/50 142/142 [==============================] - 4s 31ms/step - loss: 0.1086 - accuracy: 0.9677 - val_loss: 0.4687 - val_accuracy: 0.8870 Epoch 44/50 142/142 [==============================] - 4s 31ms/step - loss: 0.1157 - accuracy: 0.9628 - val_loss: 0.4029 - val_accuracy: 0.8997 Epoch 45/50 142/142 [==============================] - 5s 32ms/step - loss: 0.0579 - accuracy: 0.9812 - val_loss: 0.4378 - val_accuracy: 0.9033 Epoch 46/50 142/142 [==============================] - 5s 32ms/step - loss: 0.0631 - accuracy: 0.9812 - val_loss: 0.4030 - val_accuracy: 0.9037 Epoch 47/50 142/142 [==============================] - 5s 32ms/step - loss: 0.0624 - accuracy: 0.9794 - val_loss: 0.5194 - val_accuracy: 0.8937 Epoch 48/50 142/142 [==============================] - 5s 32ms/step - loss: 0.0808 - accuracy: 0.9744 - val_loss: 0.4438 - val_accuracy: 0.8970 Epoch 49/50 142/142 [==============================] - 5s 32ms/step - loss: 0.1113 - accuracy: 0.9672 - val_loss: 0.4013 - val_accuracy: 0.9100 Epoch 50/50 142/142 [==============================] - 5s 32ms/step - loss: 0.0771 - accuracy: 0.9751 - val_loss: 0.3780 - val_accuracy: 0.9080 94/94 [==============================] - 1s 6ms/step - loss: 0.3806 - accuracy: 0.9133 CNN Error: 8.67%
model = Sequential()
model.add(RandomFlip('horizontal',input_shape=(128,128,1)))
model.add(Conv2D(32, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(64, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.3))
model.add(Dense(128, activation='relu'))
model.add(Dropout(0.3))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
history = model.fit(X_train, y_train, validation_data=(X_val,y_val),epochs=50, batch_size=64)
scores = model.evaluate(X_test,y_test)
print("CNN Error: %.2f%%" % (100-scores[1]*100))
plotAUC(history)
Epoch 1/50 142/142 [==============================] - 8s 53ms/step - loss: 2.4955 - accuracy: 0.1599 - val_loss: 2.2380 - val_accuracy: 0.3130 Epoch 2/50 142/142 [==============================] - 7s 49ms/step - loss: 1.8538 - accuracy: 0.4060 - val_loss: 1.9315 - val_accuracy: 0.3593 Epoch 3/50 142/142 [==============================] - 7s 49ms/step - loss: 1.4846 - accuracy: 0.5233 - val_loss: 2.9006 - val_accuracy: 0.2413 Epoch 4/50 142/142 [==============================] - 7s 48ms/step - loss: 1.2266 - accuracy: 0.6133 - val_loss: 1.1657 - val_accuracy: 0.6340 Epoch 5/50 142/142 [==============================] - 7s 49ms/step - loss: 0.9686 - accuracy: 0.6925 - val_loss: 0.8707 - val_accuracy: 0.7307 Epoch 6/50 142/142 [==============================] - 7s 47ms/step - loss: 0.7827 - accuracy: 0.7531 - val_loss: 0.8915 - val_accuracy: 0.7207 Epoch 7/50 142/142 [==============================] - 7s 46ms/step - loss: 0.6538 - accuracy: 0.7912 - val_loss: 0.6167 - val_accuracy: 0.8137 Epoch 8/50 142/142 [==============================] - 7s 47ms/step - loss: 0.5322 - accuracy: 0.8269 - val_loss: 0.6596 - val_accuracy: 0.8020 Epoch 9/50 142/142 [==============================] - 7s 47ms/step - loss: 0.4920 - accuracy: 0.8451 - val_loss: 0.5148 - val_accuracy: 0.8510 Epoch 10/50 142/142 [==============================] - 7s 47ms/step - loss: 0.3693 - accuracy: 0.8805 - val_loss: 0.4720 - val_accuracy: 0.8563 Epoch 11/50 142/142 [==============================] - 7s 47ms/step - loss: 0.3608 - accuracy: 0.8887 - val_loss: 0.5377 - val_accuracy: 0.8313 Epoch 12/50 142/142 [==============================] - 7s 47ms/step - loss: 0.3226 - accuracy: 0.8950 - val_loss: 0.4410 - val_accuracy: 0.8610 Epoch 13/50 142/142 [==============================] - 7s 47ms/step - loss: 0.2672 - accuracy: 0.9158 - val_loss: 0.4212 - val_accuracy: 0.8763 Epoch 14/50 142/142 [==============================] - 7s 48ms/step - loss: 0.2391 - accuracy: 0.9233 - val_loss: 0.5566 - val_accuracy: 0.8397 Epoch 15/50 142/142 [==============================] - 7s 47ms/step - loss: 0.2454 - accuracy: 0.9221 - val_loss: 0.4231 - val_accuracy: 0.8780 Epoch 16/50 142/142 [==============================] - 7s 47ms/step - loss: 0.2078 - accuracy: 0.9351 - val_loss: 0.4853 - val_accuracy: 0.8647 Epoch 17/50 142/142 [==============================] - 7s 47ms/step - loss: 0.1953 - accuracy: 0.9383 - val_loss: 0.5119 - val_accuracy: 0.8553 Epoch 18/50 142/142 [==============================] - 7s 47ms/step - loss: 0.1778 - accuracy: 0.9383 - val_loss: 0.4864 - val_accuracy: 0.8697 Epoch 19/50 142/142 [==============================] - 7s 47ms/step - loss: 0.1809 - accuracy: 0.9416 - val_loss: 0.5001 - val_accuracy: 0.8593 Epoch 20/50 142/142 [==============================] - 7s 47ms/step - loss: 0.1758 - accuracy: 0.9451 - val_loss: 0.5099 - val_accuracy: 0.8637 Epoch 21/50 142/142 [==============================] - 7s 47ms/step - loss: 0.1542 - accuracy: 0.9493 - val_loss: 0.4842 - val_accuracy: 0.8700 Epoch 22/50 142/142 [==============================] - 7s 48ms/step - loss: 0.1297 - accuracy: 0.9581 - val_loss: 0.4483 - val_accuracy: 0.8827 Epoch 23/50 142/142 [==============================] - 7s 47ms/step - loss: 0.1327 - accuracy: 0.9575 - val_loss: 0.3977 - val_accuracy: 0.8913 Epoch 24/50 142/142 [==============================] - 7s 47ms/step - loss: 0.1381 - accuracy: 0.9559 - val_loss: 0.4148 - val_accuracy: 0.8837 Epoch 25/50 142/142 [==============================] - 7s 47ms/step - loss: 0.1238 - accuracy: 0.9606 - val_loss: 0.4667 - val_accuracy: 0.8747 Epoch 26/50 142/142 [==============================] - 7s 47ms/step - loss: 0.1166 - accuracy: 0.9636 - val_loss: 0.4725 - val_accuracy: 0.8740 Epoch 27/50 142/142 [==============================] - 7s 46ms/step - loss: 0.1457 - accuracy: 0.9544 - val_loss: 0.4376 - val_accuracy: 0.8823 Epoch 28/50 142/142 [==============================] - 7s 47ms/step - loss: 0.1153 - accuracy: 0.9632 - val_loss: 0.4858 - val_accuracy: 0.8750 Epoch 29/50 142/142 [==============================] - 7s 47ms/step - loss: 0.0971 - accuracy: 0.9700 - val_loss: 0.4194 - val_accuracy: 0.8920 Epoch 30/50 142/142 [==============================] - 7s 46ms/step - loss: 0.0996 - accuracy: 0.9685 - val_loss: 0.4119 - val_accuracy: 0.8973 Epoch 31/50 142/142 [==============================] - 7s 47ms/step - loss: 0.1091 - accuracy: 0.9650 - val_loss: 0.4945 - val_accuracy: 0.8677 Epoch 32/50 142/142 [==============================] - 7s 48ms/step - loss: 0.1199 - accuracy: 0.9617 - val_loss: 0.4767 - val_accuracy: 0.8887 Epoch 33/50 142/142 [==============================] - 7s 47ms/step - loss: 0.0924 - accuracy: 0.9718 - val_loss: 0.4508 - val_accuracy: 0.8850 Epoch 34/50 142/142 [==============================] - 7s 47ms/step - loss: 0.1221 - accuracy: 0.9632 - val_loss: 0.4389 - val_accuracy: 0.8903 Epoch 35/50 142/142 [==============================] - 7s 51ms/step - loss: 0.1124 - accuracy: 0.9665 - val_loss: 0.4545 - val_accuracy: 0.8970 Epoch 36/50 142/142 [==============================] - 7s 50ms/step - loss: 0.1008 - accuracy: 0.9689 - val_loss: 0.4692 - val_accuracy: 0.8823 Epoch 37/50 142/142 [==============================] - 7s 48ms/step - loss: 0.0875 - accuracy: 0.9724 - val_loss: 0.4037 - val_accuracy: 0.8987 Epoch 38/50 142/142 [==============================] - 7s 47ms/step - loss: 0.0954 - accuracy: 0.9683 - val_loss: 0.4421 - val_accuracy: 0.8930 Epoch 39/50 142/142 [==============================] - 7s 47ms/step - loss: 0.0917 - accuracy: 0.9730 - val_loss: 0.4280 - val_accuracy: 0.8947 Epoch 40/50 142/142 [==============================] - 7s 47ms/step - loss: 0.0816 - accuracy: 0.9733 - val_loss: 0.4669 - val_accuracy: 0.8943 Epoch 41/50 142/142 [==============================] - 7s 50ms/step - loss: 0.0738 - accuracy: 0.9777 - val_loss: 0.4518 - val_accuracy: 0.8937 Epoch 42/50 142/142 [==============================] - 7s 51ms/step - loss: 0.0698 - accuracy: 0.9771 - val_loss: 0.4426 - val_accuracy: 0.8997 Epoch 43/50 142/142 [==============================] - 7s 51ms/step - loss: 0.0871 - accuracy: 0.9728 - val_loss: 0.4721 - val_accuracy: 0.8807 Epoch 44/50 142/142 [==============================] - 7s 51ms/step - loss: 0.0621 - accuracy: 0.9802 - val_loss: 0.5414 - val_accuracy: 0.8793 Epoch 45/50 142/142 [==============================] - 7s 48ms/step - loss: 0.0854 - accuracy: 0.9746 - val_loss: 0.4426 - val_accuracy: 0.8937 Epoch 46/50 142/142 [==============================] - 7s 46ms/step - loss: 0.0768 - accuracy: 0.9760 - val_loss: 0.4173 - val_accuracy: 0.9007 Epoch 47/50 142/142 [==============================] - 7s 46ms/step - loss: 0.0858 - accuracy: 0.9728 - val_loss: 0.4271 - val_accuracy: 0.8923 Epoch 48/50 142/142 [==============================] - 7s 46ms/step - loss: 0.0590 - accuracy: 0.9818 - val_loss: 0.4018 - val_accuracy: 0.9000 Epoch 49/50 142/142 [==============================] - 6s 46ms/step - loss: 0.0787 - accuracy: 0.9761 - val_loss: 0.4493 - val_accuracy: 0.8907 Epoch 50/50 142/142 [==============================] - 7s 46ms/step - loss: 0.0663 - accuracy: 0.9798 - val_loss: 0.3984 - val_accuracy: 0.8997 94/94 [==============================] - 1s 6ms/step - loss: 0.4195 - accuracy: 0.8953 CNN Error: 10.47%
model = Sequential()
model.add(Conv2D(64, (3, 3), activation='relu',input_shape=(128,128,1)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(256, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(512, activation='relu'))
model.add(Dropout(0.4))
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.4))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
history = model.fit(X_train, y_train, validation_data=(X_val,y_val),epochs=50, batch_size=64)
scores = model.evaluate(X_test,y_test)
print("CNN Error: %.2f%%" % (100-scores[1]*100))
plotAUC(history)
Epoch 1/50 142/142 [==============================] - 13s 68ms/step - loss: 2.4850 - accuracy: 0.1582 - val_loss: 2.0899 - val_accuracy: 0.3210 Epoch 2/50 142/142 [==============================] - 8s 59ms/step - loss: 1.7564 - accuracy: 0.4415 - val_loss: 1.4554 - val_accuracy: 0.5177 Epoch 3/50 142/142 [==============================] - 8s 59ms/step - loss: 1.3213 - accuracy: 0.5716 - val_loss: 1.3541 - val_accuracy: 0.5670 Epoch 4/50 142/142 [==============================] - 8s 60ms/step - loss: 1.0303 - accuracy: 0.6801 - val_loss: 0.8302 - val_accuracy: 0.7350 Epoch 5/50 142/142 [==============================] - 8s 60ms/step - loss: 0.7467 - accuracy: 0.7693 - val_loss: 0.7806 - val_accuracy: 0.7510 Epoch 6/50 142/142 [==============================] - 8s 59ms/step - loss: 0.5834 - accuracy: 0.8126 - val_loss: 0.6830 - val_accuracy: 0.7933 Epoch 7/50 142/142 [==============================] - 8s 60ms/step - loss: 0.4737 - accuracy: 0.8517 - val_loss: 0.4732 - val_accuracy: 0.8603 Epoch 8/50 142/142 [==============================] - 8s 60ms/step - loss: 0.4650 - accuracy: 0.8599 - val_loss: 0.5352 - val_accuracy: 0.8370 Epoch 9/50 142/142 [==============================] - 9s 60ms/step - loss: 0.3633 - accuracy: 0.8868 - val_loss: 0.8277 - val_accuracy: 0.7540 Epoch 10/50 142/142 [==============================] - 9s 61ms/step - loss: 0.3421 - accuracy: 0.8920 - val_loss: 0.4116 - val_accuracy: 0.8780 Epoch 11/50 142/142 [==============================] - 9s 60ms/step - loss: 0.2416 - accuracy: 0.9226 - val_loss: 0.4124 - val_accuracy: 0.8850 Epoch 12/50 142/142 [==============================] - 9s 60ms/step - loss: 0.2023 - accuracy: 0.9339 - val_loss: 0.4348 - val_accuracy: 0.8777 Epoch 13/50 142/142 [==============================] - 9s 61ms/step - loss: 0.2252 - accuracy: 0.9276 - val_loss: 0.3851 - val_accuracy: 0.8920 Epoch 14/50 142/142 [==============================] - 9s 61ms/step - loss: 0.1674 - accuracy: 0.9471 - val_loss: 0.3729 - val_accuracy: 0.8967 Epoch 15/50 142/142 [==============================] - 9s 60ms/step - loss: 0.1871 - accuracy: 0.9393 - val_loss: 0.4539 - val_accuracy: 0.8767 Epoch 16/50 142/142 [==============================] - 9s 62ms/step - loss: 0.1549 - accuracy: 0.9527 - val_loss: 0.4446 - val_accuracy: 0.8867 Epoch 17/50 142/142 [==============================] - 9s 62ms/step - loss: 0.1390 - accuracy: 0.9554 - val_loss: 0.4577 - val_accuracy: 0.8830 Epoch 18/50 142/142 [==============================] - 9s 62ms/step - loss: 0.1425 - accuracy: 0.9554 - val_loss: 0.3873 - val_accuracy: 0.8980 Epoch 19/50 142/142 [==============================] - 9s 61ms/step - loss: 0.1223 - accuracy: 0.9603 - val_loss: 0.3863 - val_accuracy: 0.9017 Epoch 20/50 142/142 [==============================] - 9s 61ms/step - loss: 0.1185 - accuracy: 0.9628 - val_loss: 0.3960 - val_accuracy: 0.8950 Epoch 21/50 142/142 [==============================] - 9s 64ms/step - loss: 0.2190 - accuracy: 0.9415 - val_loss: 0.4390 - val_accuracy: 0.8923 Epoch 22/50 142/142 [==============================] - 9s 62ms/step - loss: 0.1106 - accuracy: 0.9659 - val_loss: 0.5731 - val_accuracy: 0.8603 Epoch 23/50 142/142 [==============================] - 9s 62ms/step - loss: 0.1639 - accuracy: 0.9515 - val_loss: 0.3799 - val_accuracy: 0.9060 Epoch 24/50 142/142 [==============================] - 9s 61ms/step - loss: 0.0888 - accuracy: 0.9722 - val_loss: 0.3633 - val_accuracy: 0.9053 Epoch 25/50 142/142 [==============================] - 9s 61ms/step - loss: 0.1083 - accuracy: 0.9654 - val_loss: 0.3477 - val_accuracy: 0.9103 Epoch 26/50 142/142 [==============================] - 9s 62ms/step - loss: 0.0859 - accuracy: 0.9742 - val_loss: 0.3861 - val_accuracy: 0.9047 Epoch 27/50 142/142 [==============================] - 9s 62ms/step - loss: 0.0989 - accuracy: 0.9689 - val_loss: 0.3841 - val_accuracy: 0.9037 Epoch 28/50 142/142 [==============================] - 9s 62ms/step - loss: 0.0787 - accuracy: 0.9760 - val_loss: 0.3694 - val_accuracy: 0.9087 Epoch 29/50 142/142 [==============================] - 9s 62ms/step - loss: 0.0959 - accuracy: 0.9710 - val_loss: 0.3913 - val_accuracy: 0.9033 Epoch 30/50 142/142 [==============================] - 9s 64ms/step - loss: 0.0947 - accuracy: 0.9715 - val_loss: 0.4551 - val_accuracy: 0.8867 Epoch 31/50 142/142 [==============================] - 9s 64ms/step - loss: 0.0936 - accuracy: 0.9701 - val_loss: 0.4012 - val_accuracy: 0.9047 Epoch 32/50 142/142 [==============================] - 9s 61ms/step - loss: 0.0738 - accuracy: 0.9767 - val_loss: 0.3894 - val_accuracy: 0.9063 Epoch 33/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0688 - accuracy: 0.9798 - val_loss: 0.4155 - val_accuracy: 0.9020 Epoch 34/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0927 - accuracy: 0.9719 - val_loss: 0.5343 - val_accuracy: 0.8717 Epoch 35/50 142/142 [==============================] - 9s 62ms/step - loss: 0.0786 - accuracy: 0.9751 - val_loss: 0.4297 - val_accuracy: 0.8937 Epoch 36/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0539 - accuracy: 0.9831 - val_loss: 0.5410 - val_accuracy: 0.8947 Epoch 37/50 142/142 [==============================] - 9s 62ms/step - loss: 0.0678 - accuracy: 0.9791 - val_loss: 0.4324 - val_accuracy: 0.9000 Epoch 38/50 142/142 [==============================] - 9s 65ms/step - loss: 0.0704 - accuracy: 0.9788 - val_loss: 0.4510 - val_accuracy: 0.8977 Epoch 39/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0749 - accuracy: 0.9773 - val_loss: 0.4753 - val_accuracy: 0.9023 Epoch 40/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0793 - accuracy: 0.9780 - val_loss: 0.4187 - val_accuracy: 0.9020 Epoch 41/50 142/142 [==============================] - 9s 61ms/step - loss: 0.0567 - accuracy: 0.9828 - val_loss: 0.4377 - val_accuracy: 0.8957 Epoch 42/50 142/142 [==============================] - 9s 62ms/step - loss: 0.0656 - accuracy: 0.9811 - val_loss: 0.4882 - val_accuracy: 0.8877 Epoch 43/50 142/142 [==============================] - 9s 61ms/step - loss: 0.0737 - accuracy: 0.9788 - val_loss: 0.3982 - val_accuracy: 0.9047 Epoch 44/50 142/142 [==============================] - 9s 60ms/step - loss: 0.0644 - accuracy: 0.9816 - val_loss: 0.3743 - val_accuracy: 0.9117 Epoch 45/50 142/142 [==============================] - 9s 62ms/step - loss: 0.0578 - accuracy: 0.9829 - val_loss: 0.4223 - val_accuracy: 0.9000 Epoch 46/50 142/142 [==============================] - 8s 60ms/step - loss: 0.0653 - accuracy: 0.9806 - val_loss: 0.3860 - val_accuracy: 0.9097 Epoch 47/50 142/142 [==============================] - 9s 60ms/step - loss: 0.0798 - accuracy: 0.9772 - val_loss: 0.4044 - val_accuracy: 0.9000 Epoch 48/50 142/142 [==============================] - 9s 62ms/step - loss: 0.0625 - accuracy: 0.9797 - val_loss: 0.4565 - val_accuracy: 0.9040 Epoch 49/50 142/142 [==============================] - 9s 61ms/step - loss: 0.0902 - accuracy: 0.9760 - val_loss: 0.3985 - val_accuracy: 0.9013 Epoch 50/50 142/142 [==============================] - 9s 62ms/step - loss: 0.0561 - accuracy: 0.9814 - val_loss: 0.4246 - val_accuracy: 0.9067 94/94 [==============================] - 1s 12ms/step - loss: 0.3849 - accuracy: 0.9007 CNN Error: 9.93%
model = Sequential()
model.add(RandomFlip('horizontal',input_shape=(128,128,1)))
model.add(Conv2D(64, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(256, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(512, activation='relu'))
model.add(Dropout(0.4))
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.4))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
history = model.fit(X_train, y_train, validation_data=(X_val,y_val),epochs=50, batch_size=64)
scores = model.evaluate(X_test,y_test)
print("CNN Error: %.2f%%" % (100-scores[1]*100))
plotAUC(history)
Epoch 1/50 142/142 [==============================] - 12s 77ms/step - loss: 2.4354 - accuracy: 0.1736 - val_loss: 2.4967 - val_accuracy: 0.1700 Epoch 2/50 142/142 [==============================] - 11s 75ms/step - loss: 1.7627 - accuracy: 0.4311 - val_loss: 1.7003 - val_accuracy: 0.4480 Epoch 3/50 142/142 [==============================] - 11s 77ms/step - loss: 1.3141 - accuracy: 0.5839 - val_loss: 1.0935 - val_accuracy: 0.6497 Epoch 4/50 142/142 [==============================] - 11s 76ms/step - loss: 0.9700 - accuracy: 0.6942 - val_loss: 0.9332 - val_accuracy: 0.6910 Epoch 5/50 142/142 [==============================] - 11s 76ms/step - loss: 0.7765 - accuracy: 0.7542 - val_loss: 0.7807 - val_accuracy: 0.7547 Epoch 6/50 142/142 [==============================] - 10s 74ms/step - loss: 0.5799 - accuracy: 0.8168 - val_loss: 1.8620 - val_accuracy: 0.5240 Epoch 7/50 142/142 [==============================] - 10s 74ms/step - loss: 0.5268 - accuracy: 0.8368 - val_loss: 0.4625 - val_accuracy: 0.8533 Epoch 8/50 142/142 [==============================] - 11s 75ms/step - loss: 0.3856 - accuracy: 0.8784 - val_loss: 0.4316 - val_accuracy: 0.8697 Epoch 9/50 142/142 [==============================] - 11s 76ms/step - loss: 0.3518 - accuracy: 0.8887 - val_loss: 0.7987 - val_accuracy: 0.7660 Epoch 10/50 142/142 [==============================] - 11s 76ms/step - loss: 0.2549 - accuracy: 0.9227 - val_loss: 0.3841 - val_accuracy: 0.8873 Epoch 11/50 142/142 [==============================] - 11s 74ms/step - loss: 0.2260 - accuracy: 0.9283 - val_loss: 0.3795 - val_accuracy: 0.8860 Epoch 12/50 142/142 [==============================] - 11s 76ms/step - loss: 0.2091 - accuracy: 0.9334 - val_loss: 0.3814 - val_accuracy: 0.8890 Epoch 13/50 142/142 [==============================] - 11s 75ms/step - loss: 0.1782 - accuracy: 0.9412 - val_loss: 0.3704 - val_accuracy: 0.8963 Epoch 14/50 142/142 [==============================] - 11s 79ms/step - loss: 0.1539 - accuracy: 0.9521 - val_loss: 0.3339 - val_accuracy: 0.9003 Epoch 15/50 142/142 [==============================] - 11s 74ms/step - loss: 0.1465 - accuracy: 0.9551 - val_loss: 0.4129 - val_accuracy: 0.8890 Epoch 16/50 142/142 [==============================] - 11s 76ms/step - loss: 0.1332 - accuracy: 0.9569 - val_loss: 0.3310 - val_accuracy: 0.9110 Epoch 17/50 142/142 [==============================] - 11s 78ms/step - loss: 0.1205 - accuracy: 0.9617 - val_loss: 0.3317 - val_accuracy: 0.9147 Epoch 18/50 142/142 [==============================] - 11s 76ms/step - loss: 0.1203 - accuracy: 0.9634 - val_loss: 0.6004 - val_accuracy: 0.8460 Epoch 19/50 142/142 [==============================] - 11s 77ms/step - loss: 0.1636 - accuracy: 0.9506 - val_loss: 0.3618 - val_accuracy: 0.9083 Epoch 20/50 142/142 [==============================] - 11s 76ms/step - loss: 0.1198 - accuracy: 0.9642 - val_loss: 0.5207 - val_accuracy: 0.8667 Epoch 21/50 142/142 [==============================] - 11s 75ms/step - loss: 0.1175 - accuracy: 0.9626 - val_loss: 0.3672 - val_accuracy: 0.9117 Epoch 22/50 142/142 [==============================] - 11s 75ms/step - loss: 0.0793 - accuracy: 0.9737 - val_loss: 0.5321 - val_accuracy: 0.8730 Epoch 23/50 142/142 [==============================] - 11s 77ms/step - loss: 0.1016 - accuracy: 0.9679 - val_loss: 0.4213 - val_accuracy: 0.8973 Epoch 24/50 142/142 [==============================] - 10s 72ms/step - loss: 0.0792 - accuracy: 0.9742 - val_loss: 0.4024 - val_accuracy: 0.9073 Epoch 25/50 142/142 [==============================] - 11s 75ms/step - loss: 0.1254 - accuracy: 0.9628 - val_loss: 0.5326 - val_accuracy: 0.8590 Epoch 26/50 142/142 [==============================] - 11s 77ms/step - loss: 0.0893 - accuracy: 0.9743 - val_loss: 0.3638 - val_accuracy: 0.9063 Epoch 27/50 142/142 [==============================] - 11s 75ms/step - loss: 0.0661 - accuracy: 0.9785 - val_loss: 0.4164 - val_accuracy: 0.9017 Epoch 28/50 142/142 [==============================] - 11s 75ms/step - loss: 0.0816 - accuracy: 0.9741 - val_loss: 0.3904 - val_accuracy: 0.9103 Epoch 29/50 142/142 [==============================] - 11s 76ms/step - loss: 0.0643 - accuracy: 0.9807 - val_loss: 0.3791 - val_accuracy: 0.9097 Epoch 30/50 142/142 [==============================] - 11s 75ms/step - loss: 0.0803 - accuracy: 0.9741 - val_loss: 0.3920 - val_accuracy: 0.9093 Epoch 31/50 142/142 [==============================] - 11s 75ms/step - loss: 0.0568 - accuracy: 0.9811 - val_loss: 0.3658 - val_accuracy: 0.9133 Epoch 32/50 142/142 [==============================] - 11s 75ms/step - loss: 0.0996 - accuracy: 0.9692 - val_loss: 0.3969 - val_accuracy: 0.9017 Epoch 33/50 142/142 [==============================] - 10s 73ms/step - loss: 0.0735 - accuracy: 0.9781 - val_loss: 0.3515 - val_accuracy: 0.9123 Epoch 34/50 142/142 [==============================] - 11s 76ms/step - loss: 0.0582 - accuracy: 0.9813 - val_loss: 0.3369 - val_accuracy: 0.9177 Epoch 35/50 142/142 [==============================] - 11s 74ms/step - loss: 0.0646 - accuracy: 0.9798 - val_loss: 0.3445 - val_accuracy: 0.9207 Epoch 36/50 142/142 [==============================] - 10s 74ms/step - loss: 0.0625 - accuracy: 0.9811 - val_loss: 0.4162 - val_accuracy: 0.9047 Epoch 37/50 142/142 [==============================] - 11s 78ms/step - loss: 0.0763 - accuracy: 0.9777 - val_loss: 0.4031 - val_accuracy: 0.9003 Epoch 38/50 142/142 [==============================] - 11s 79ms/step - loss: 0.0513 - accuracy: 0.9836 - val_loss: 0.3725 - val_accuracy: 0.9213 Epoch 39/50 142/142 [==============================] - 11s 76ms/step - loss: 0.0509 - accuracy: 0.9842 - val_loss: 0.4082 - val_accuracy: 0.9080 Epoch 40/50 142/142 [==============================] - 11s 76ms/step - loss: 0.0709 - accuracy: 0.9786 - val_loss: 0.3815 - val_accuracy: 0.9100 Epoch 41/50 142/142 [==============================] - 11s 76ms/step - loss: 0.0495 - accuracy: 0.9845 - val_loss: 0.3835 - val_accuracy: 0.9167 Epoch 42/50 142/142 [==============================] - 11s 76ms/step - loss: 0.0656 - accuracy: 0.9811 - val_loss: 0.3476 - val_accuracy: 0.9097 Epoch 43/50 142/142 [==============================] - 11s 76ms/step - loss: 0.0549 - accuracy: 0.9815 - val_loss: 0.4187 - val_accuracy: 0.9107 Epoch 44/50 142/142 [==============================] - 11s 76ms/step - loss: 0.0705 - accuracy: 0.9793 - val_loss: 0.4011 - val_accuracy: 0.9077 Epoch 45/50 142/142 [==============================] - 10s 74ms/step - loss: 0.0510 - accuracy: 0.9847 - val_loss: 0.3505 - val_accuracy: 0.9217 Epoch 46/50 142/142 [==============================] - 11s 75ms/step - loss: 0.0516 - accuracy: 0.9837 - val_loss: 0.4049 - val_accuracy: 0.9090 Epoch 47/50 142/142 [==============================] - 10s 73ms/step - loss: 0.0526 - accuracy: 0.9835 - val_loss: 0.3953 - val_accuracy: 0.9137 Epoch 48/50 142/142 [==============================] - 11s 78ms/step - loss: 0.0440 - accuracy: 0.9867 - val_loss: 0.3651 - val_accuracy: 0.9233 Epoch 49/50 142/142 [==============================] - 11s 75ms/step - loss: 0.0531 - accuracy: 0.9833 - val_loss: 0.3761 - val_accuracy: 0.9157 Epoch 50/50 142/142 [==============================] - 11s 77ms/step - loss: 0.0602 - accuracy: 0.9813 - val_loss: 0.3972 - val_accuracy: 0.9013 94/94 [==============================] - 1s 10ms/step - loss: 0.3848 - accuracy: 0.9107 CNN Error: 8.93%
def getModel(activation):
model = Sequential()
model.add(Conv2D(64, (3, 3), activation=activation,input_shape=(128,128,1)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(128, (3, 3), activation=activation))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(256, (3, 3), activation=activation))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(512, activation=activation))
model.add(Dropout(0.4))
model.add(Dense(256, activation=activation))
model.add(Dropout(0.4))
model.add(Dense(15,activation='softmax'))
return model
activations = ['tanh','relu','sigmoid']
results = {}
for function in activations:
model = getModel(function)
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
history = model.fit(X_train,y_train, validation_data=(X_val,y_val),epochs=50, batch_size=64)
results[function] = history
Epoch 1/50 142/142 [==============================] - 15s 81ms/step - loss: 3.1779 - accuracy: 0.0824 - val_loss: 2.8255 - val_accuracy: 0.0667 Epoch 2/50 142/142 [==============================] - 11s 75ms/step - loss: 3.0432 - accuracy: 0.0835 - val_loss: 2.8813 - val_accuracy: 0.0667 Epoch 3/50 142/142 [==============================] - 11s 75ms/step - loss: 2.9391 - accuracy: 0.0888 - val_loss: 2.8347 - val_accuracy: 0.0667 Epoch 4/50 142/142 [==============================] - 11s 75ms/step - loss: 2.8840 - accuracy: 0.0830 - val_loss: 2.8496 - val_accuracy: 0.0667 Epoch 5/50 142/142 [==============================] - 11s 75ms/step - loss: 2.8283 - accuracy: 0.0878 - val_loss: 2.8539 - val_accuracy: 0.0667 Epoch 6/50 142/142 [==============================] - 11s 75ms/step - loss: 2.8025 - accuracy: 0.0845 - val_loss: 2.7991 - val_accuracy: 0.0667 Epoch 7/50 142/142 [==============================] - 11s 75ms/step - loss: 2.7690 - accuracy: 0.0846 - val_loss: 2.8351 - val_accuracy: 0.0667 Epoch 8/50 142/142 [==============================] - 11s 76ms/step - loss: 2.7449 - accuracy: 0.0911 - val_loss: 2.8389 - val_accuracy: 0.0667 Epoch 9/50 142/142 [==============================] - 11s 76ms/step - loss: 2.7219 - accuracy: 0.0946 - val_loss: 2.8136 - val_accuracy: 0.0667 Epoch 10/50 142/142 [==============================] - 11s 76ms/step - loss: 2.7157 - accuracy: 0.0898 - val_loss: 2.7881 - val_accuracy: 0.0667 Epoch 11/50 142/142 [==============================] - 11s 77ms/step - loss: 2.7034 - accuracy: 0.0870 - val_loss: 2.8619 - val_accuracy: 0.0667 Epoch 12/50 142/142 [==============================] - 11s 77ms/step - loss: 2.6978 - accuracy: 0.0938 - val_loss: 2.8581 - val_accuracy: 0.0667 Epoch 13/50 142/142 [==============================] - 11s 77ms/step - loss: 2.6949 - accuracy: 0.0873 - val_loss: 2.8733 - val_accuracy: 0.0667 Epoch 14/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6838 - accuracy: 0.0945 - val_loss: 2.8338 - val_accuracy: 0.0667 Epoch 15/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6843 - accuracy: 0.0896 - val_loss: 2.8522 - val_accuracy: 0.0667 Epoch 16/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6847 - accuracy: 0.0905 - val_loss: 2.7765 - val_accuracy: 0.0667 Epoch 17/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6804 - accuracy: 0.0926 - val_loss: 2.8217 - val_accuracy: 0.0667 Epoch 18/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6739 - accuracy: 0.0949 - val_loss: 2.8501 - val_accuracy: 0.0667 Epoch 19/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6824 - accuracy: 0.0976 - val_loss: 2.7888 - val_accuracy: 0.0667 Epoch 20/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6784 - accuracy: 0.0930 - val_loss: 2.8444 - val_accuracy: 0.0667 Epoch 21/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6725 - accuracy: 0.0973 - val_loss: 2.8007 - val_accuracy: 0.0667 Epoch 22/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6759 - accuracy: 0.0961 - val_loss: 2.8006 - val_accuracy: 0.0667 Epoch 23/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6730 - accuracy: 0.0884 - val_loss: 2.8282 - val_accuracy: 0.0667 Epoch 24/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6812 - accuracy: 0.0928 - val_loss: 2.8109 - val_accuracy: 0.0667 Epoch 25/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6700 - accuracy: 0.0928 - val_loss: 2.7876 - val_accuracy: 0.0667 Epoch 26/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6749 - accuracy: 0.0893 - val_loss: 2.7855 - val_accuracy: 0.0667 Epoch 27/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6721 - accuracy: 0.0947 - val_loss: 2.7954 - val_accuracy: 0.0667 Epoch 28/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6768 - accuracy: 0.0961 - val_loss: 2.7983 - val_accuracy: 0.0667 Epoch 29/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6691 - accuracy: 0.0937 - val_loss: 2.8047 - val_accuracy: 0.0667 Epoch 30/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6756 - accuracy: 0.0907 - val_loss: 2.8090 - val_accuracy: 0.0667 Epoch 31/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6810 - accuracy: 0.0963 - val_loss: 2.7982 - val_accuracy: 0.0667 Epoch 32/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6709 - accuracy: 0.1006 - val_loss: 2.8056 - val_accuracy: 0.0667 Epoch 33/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6706 - accuracy: 0.0940 - val_loss: 2.8224 - val_accuracy: 0.0667 Epoch 34/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6712 - accuracy: 0.0942 - val_loss: 2.8132 - val_accuracy: 0.0667 Epoch 35/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6756 - accuracy: 0.0966 - val_loss: 2.8159 - val_accuracy: 0.0667 Epoch 36/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6748 - accuracy: 0.0924 - val_loss: 2.8591 - val_accuracy: 0.0667 Epoch 37/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6755 - accuracy: 0.0877 - val_loss: 2.8266 - val_accuracy: 0.0667 Epoch 38/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6687 - accuracy: 0.0923 - val_loss: 2.8059 - val_accuracy: 0.0667 Epoch 39/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6744 - accuracy: 0.0956 - val_loss: 2.8020 - val_accuracy: 0.0667 Epoch 40/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6733 - accuracy: 0.0945 - val_loss: 2.8056 - val_accuracy: 0.0667 Epoch 41/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6685 - accuracy: 0.0948 - val_loss: 2.8337 - val_accuracy: 0.0667 Epoch 42/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6716 - accuracy: 0.0917 - val_loss: 2.8232 - val_accuracy: 0.0667 Epoch 43/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6774 - accuracy: 0.0951 - val_loss: 2.7868 - val_accuracy: 0.0667 Epoch 44/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6817 - accuracy: 0.0898 - val_loss: 2.8627 - val_accuracy: 0.0667 Epoch 45/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6753 - accuracy: 0.0871 - val_loss: 2.8153 - val_accuracy: 0.0667 Epoch 46/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6707 - accuracy: 0.0988 - val_loss: 2.8087 - val_accuracy: 0.0667 Epoch 47/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6766 - accuracy: 0.0885 - val_loss: 2.8139 - val_accuracy: 0.0667 Epoch 48/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6706 - accuracy: 0.0896 - val_loss: 2.8495 - val_accuracy: 0.0667 Epoch 49/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6748 - accuracy: 0.0917 - val_loss: 2.7844 - val_accuracy: 0.0667 Epoch 50/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6764 - accuracy: 0.0920 - val_loss: 2.7968 - val_accuracy: 0.0667 Epoch 1/50 142/142 [==============================] - 11s 69ms/step - loss: 2.4743 - accuracy: 0.1526 - val_loss: 2.3181 - val_accuracy: 0.2310 Epoch 2/50 142/142 [==============================] - 9s 63ms/step - loss: 1.9374 - accuracy: 0.3669 - val_loss: 1.7686 - val_accuracy: 0.4107 Epoch 3/50 142/142 [==============================] - 9s 64ms/step - loss: 1.3923 - accuracy: 0.5537 - val_loss: 1.1766 - val_accuracy: 0.6347 Epoch 4/50 142/142 [==============================] - 9s 63ms/step - loss: 1.0432 - accuracy: 0.6597 - val_loss: 1.5521 - val_accuracy: 0.5167 Epoch 5/50 142/142 [==============================] - 9s 64ms/step - loss: 0.8095 - accuracy: 0.7453 - val_loss: 0.6962 - val_accuracy: 0.7813 Epoch 6/50 142/142 [==============================] - 9s 63ms/step - loss: 0.5749 - accuracy: 0.8175 - val_loss: 0.6502 - val_accuracy: 0.8037 Epoch 7/50 142/142 [==============================] - 9s 63ms/step - loss: 0.4514 - accuracy: 0.8553 - val_loss: 0.4647 - val_accuracy: 0.8603 Epoch 8/50 142/142 [==============================] - 9s 63ms/step - loss: 0.3668 - accuracy: 0.8829 - val_loss: 0.3923 - val_accuracy: 0.8800 Epoch 9/50 142/142 [==============================] - 9s 63ms/step - loss: 0.3059 - accuracy: 0.9043 - val_loss: 0.6138 - val_accuracy: 0.8080 Epoch 10/50 142/142 [==============================] - 9s 63ms/step - loss: 0.2650 - accuracy: 0.9149 - val_loss: 0.3973 - val_accuracy: 0.8827 Epoch 11/50 142/142 [==============================] - 9s 63ms/step - loss: 0.2268 - accuracy: 0.9287 - val_loss: 0.3883 - val_accuracy: 0.8883 Epoch 12/50 142/142 [==============================] - 9s 63ms/step - loss: 0.1845 - accuracy: 0.9421 - val_loss: 0.4137 - val_accuracy: 0.8790 Epoch 13/50 142/142 [==============================] - 9s 63ms/step - loss: 0.1586 - accuracy: 0.9471 - val_loss: 0.3961 - val_accuracy: 0.8903 Epoch 14/50 142/142 [==============================] - 9s 63ms/step - loss: 0.1435 - accuracy: 0.9531 - val_loss: 0.3455 - val_accuracy: 0.9020 Epoch 15/50 142/142 [==============================] - 9s 63ms/step - loss: 0.1261 - accuracy: 0.9584 - val_loss: 0.4457 - val_accuracy: 0.8813 Epoch 16/50 142/142 [==============================] - 9s 64ms/step - loss: 0.1188 - accuracy: 0.9638 - val_loss: 0.3198 - val_accuracy: 0.9060 Epoch 17/50 142/142 [==============================] - 9s 63ms/step - loss: 0.1320 - accuracy: 0.9618 - val_loss: 0.4289 - val_accuracy: 0.8857 Epoch 18/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0930 - accuracy: 0.9715 - val_loss: 0.3472 - val_accuracy: 0.9073 Epoch 19/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0989 - accuracy: 0.9674 - val_loss: 0.7174 - val_accuracy: 0.8347 Epoch 20/50 142/142 [==============================] - 9s 64ms/step - loss: 0.1221 - accuracy: 0.9615 - val_loss: 0.4036 - val_accuracy: 0.8983 Epoch 21/50 142/142 [==============================] - 9s 64ms/step - loss: 0.1058 - accuracy: 0.9669 - val_loss: 0.3465 - val_accuracy: 0.9083 Epoch 22/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0899 - accuracy: 0.9715 - val_loss: 0.3564 - val_accuracy: 0.9073 Epoch 23/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0822 - accuracy: 0.9722 - val_loss: 0.3608 - val_accuracy: 0.9073 Epoch 24/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0752 - accuracy: 0.9744 - val_loss: 0.4015 - val_accuracy: 0.9013 Epoch 25/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0664 - accuracy: 0.9775 - val_loss: 0.4032 - val_accuracy: 0.9053 Epoch 26/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0908 - accuracy: 0.9723 - val_loss: 0.3916 - val_accuracy: 0.8953 Epoch 27/50 142/142 [==============================] - 9s 64ms/step - loss: 0.1347 - accuracy: 0.9619 - val_loss: 0.3726 - val_accuracy: 0.9047 Epoch 28/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0667 - accuracy: 0.9795 - val_loss: 0.3618 - val_accuracy: 0.9130 Epoch 29/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0664 - accuracy: 0.9794 - val_loss: 0.4402 - val_accuracy: 0.8953 Epoch 30/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0666 - accuracy: 0.9802 - val_loss: 0.5514 - val_accuracy: 0.8717 Epoch 31/50 142/142 [==============================] - 9s 64ms/step - loss: 0.0669 - accuracy: 0.9790 - val_loss: 0.4194 - val_accuracy: 0.8997 Epoch 32/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0580 - accuracy: 0.9821 - val_loss: 0.3875 - val_accuracy: 0.9010 Epoch 33/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0520 - accuracy: 0.9833 - val_loss: 0.3471 - val_accuracy: 0.9147 Epoch 34/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0677 - accuracy: 0.9805 - val_loss: 0.5559 - val_accuracy: 0.8757 Epoch 35/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0710 - accuracy: 0.9788 - val_loss: 0.4524 - val_accuracy: 0.8940 Epoch 36/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0721 - accuracy: 0.9782 - val_loss: 0.4399 - val_accuracy: 0.8990 Epoch 37/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0772 - accuracy: 0.9757 - val_loss: 0.5327 - val_accuracy: 0.8710 Epoch 38/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0608 - accuracy: 0.9817 - val_loss: 0.3707 - val_accuracy: 0.9100 Epoch 39/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0609 - accuracy: 0.9832 - val_loss: 0.4430 - val_accuracy: 0.9027 Epoch 40/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0494 - accuracy: 0.9850 - val_loss: 0.4192 - val_accuracy: 0.9067 Epoch 41/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0588 - accuracy: 0.9827 - val_loss: 0.3821 - val_accuracy: 0.9120 Epoch 42/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0624 - accuracy: 0.9801 - val_loss: 0.3585 - val_accuracy: 0.9110 Epoch 43/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0518 - accuracy: 0.9834 - val_loss: 0.4508 - val_accuracy: 0.8977 Epoch 44/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0594 - accuracy: 0.9815 - val_loss: 0.5478 - val_accuracy: 0.8887 Epoch 45/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0566 - accuracy: 0.9831 - val_loss: 0.4037 - val_accuracy: 0.9047 Epoch 46/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0529 - accuracy: 0.9832 - val_loss: 0.4114 - val_accuracy: 0.9103 Epoch 47/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0493 - accuracy: 0.9860 - val_loss: 0.4272 - val_accuracy: 0.9113 Epoch 48/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0338 - accuracy: 0.9897 - val_loss: 0.4186 - val_accuracy: 0.9073 Epoch 49/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0438 - accuracy: 0.9874 - val_loss: 0.3655 - val_accuracy: 0.9143 Epoch 50/50 142/142 [==============================] - 9s 64ms/step - loss: 0.0621 - accuracy: 0.9805 - val_loss: 0.4698 - val_accuracy: 0.9027 Epoch 1/50 142/142 [==============================] - 12s 80ms/step - loss: 2.7199 - accuracy: 0.0948 - val_loss: 2.7788 - val_accuracy: 0.0667 Epoch 2/50 142/142 [==============================] - 11s 77ms/step - loss: 2.6547 - accuracy: 0.0940 - val_loss: 2.7786 - val_accuracy: 0.0667 Epoch 3/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6446 - accuracy: 0.0953 - val_loss: 2.7596 - val_accuracy: 0.0667 Epoch 4/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6453 - accuracy: 0.0961 - val_loss: 2.7632 - val_accuracy: 0.0667 Epoch 5/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6436 - accuracy: 0.0985 - val_loss: 2.7653 - val_accuracy: 0.0667 Epoch 6/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6436 - accuracy: 0.0978 - val_loss: 2.7690 - val_accuracy: 0.0667 Epoch 7/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6396 - accuracy: 0.1017 - val_loss: 2.7539 - val_accuracy: 0.0667 Epoch 8/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6428 - accuracy: 0.0992 - val_loss: 2.7769 - val_accuracy: 0.0667 Epoch 9/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6426 - accuracy: 0.1011 - val_loss: 2.7762 - val_accuracy: 0.0667 Epoch 10/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6405 - accuracy: 0.1038 - val_loss: 2.7651 - val_accuracy: 0.0667 Epoch 11/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6403 - accuracy: 0.1045 - val_loss: 2.7712 - val_accuracy: 0.0667 Epoch 12/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6405 - accuracy: 0.1028 - val_loss: 2.7651 - val_accuracy: 0.0667 Epoch 13/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6389 - accuracy: 0.1029 - val_loss: 2.7682 - val_accuracy: 0.0667 Epoch 14/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6406 - accuracy: 0.0998 - val_loss: 2.7742 - val_accuracy: 0.0667 Epoch 15/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6391 - accuracy: 0.1031 - val_loss: 2.8017 - val_accuracy: 0.0667 Epoch 16/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6400 - accuracy: 0.1039 - val_loss: 2.7892 - val_accuracy: 0.0667 Epoch 17/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6391 - accuracy: 0.1041 - val_loss: 2.7781 - val_accuracy: 0.0667 Epoch 18/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6400 - accuracy: 0.1053 - val_loss: 2.7907 - val_accuracy: 0.0667 Epoch 19/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6387 - accuracy: 0.1052 - val_loss: 2.8150 - val_accuracy: 0.0667 Epoch 20/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6395 - accuracy: 0.1042 - val_loss: 2.7740 - val_accuracy: 0.0667 Epoch 21/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6388 - accuracy: 0.1046 - val_loss: 2.7785 - val_accuracy: 0.0667 Epoch 22/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6374 - accuracy: 0.1051 - val_loss: 2.7920 - val_accuracy: 0.0667 Epoch 23/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6395 - accuracy: 0.1046 - val_loss: 2.7744 - val_accuracy: 0.0667 Epoch 24/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6383 - accuracy: 0.1057 - val_loss: 2.7775 - val_accuracy: 0.0667 Epoch 25/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6374 - accuracy: 0.1071 - val_loss: 2.7784 - val_accuracy: 0.0667 Epoch 26/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6382 - accuracy: 0.1037 - val_loss: 2.7811 - val_accuracy: 0.0667 Epoch 27/50 142/142 [==============================] - 11s 78ms/step - loss: 2.6387 - accuracy: 0.1063 - val_loss: 2.7674 - val_accuracy: 0.0667 Epoch 28/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6386 - accuracy: 0.1022 - val_loss: 2.7702 - val_accuracy: 0.0667 Epoch 29/50 142/142 [==============================] - 11s 77ms/step - loss: 2.6393 - accuracy: 0.1062 - val_loss: 2.7728 - val_accuracy: 0.0667 Epoch 30/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6384 - accuracy: 0.1052 - val_loss: 2.7879 - val_accuracy: 0.0667 Epoch 31/50 142/142 [==============================] - 11s 77ms/step - loss: 2.6389 - accuracy: 0.1029 - val_loss: 2.7884 - val_accuracy: 0.0667 Epoch 32/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6373 - accuracy: 0.1076 - val_loss: 2.7837 - val_accuracy: 0.0667 Epoch 33/50 142/142 [==============================] - 11s 77ms/step - loss: 2.6379 - accuracy: 0.1051 - val_loss: 2.7896 - val_accuracy: 0.0667 Epoch 34/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6380 - accuracy: 0.1062 - val_loss: 2.7637 - val_accuracy: 0.0667 Epoch 35/50 142/142 [==============================] - 11s 77ms/step - loss: 2.6378 - accuracy: 0.1058 - val_loss: 2.7813 - val_accuracy: 0.0667 Epoch 36/50 142/142 [==============================] - 11s 77ms/step - loss: 2.6377 - accuracy: 0.1053 - val_loss: 2.7831 - val_accuracy: 0.0667 Epoch 37/50 142/142 [==============================] - 11s 77ms/step - loss: 2.6365 - accuracy: 0.1032 - val_loss: 2.7767 - val_accuracy: 0.0667 Epoch 38/50 142/142 [==============================] - 11s 77ms/step - loss: 2.6375 - accuracy: 0.1047 - val_loss: 2.7772 - val_accuracy: 0.0667 Epoch 39/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6372 - accuracy: 0.1057 - val_loss: 2.7721 - val_accuracy: 0.0667 Epoch 40/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6370 - accuracy: 0.1040 - val_loss: 2.7793 - val_accuracy: 0.0667 Epoch 41/50 142/142 [==============================] - 11s 77ms/step - loss: 2.6373 - accuracy: 0.1058 - val_loss: 2.7682 - val_accuracy: 0.0667 Epoch 42/50 142/142 [==============================] - 11s 77ms/step - loss: 2.6368 - accuracy: 0.1042 - val_loss: 2.7806 - val_accuracy: 0.0667 Epoch 43/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6376 - accuracy: 0.1058 - val_loss: 2.7785 - val_accuracy: 0.0667 Epoch 44/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6377 - accuracy: 0.1061 - val_loss: 2.7691 - val_accuracy: 0.0667 Epoch 45/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6364 - accuracy: 0.1048 - val_loss: 2.7654 - val_accuracy: 0.0667 Epoch 46/50 142/142 [==============================] - 11s 77ms/step - loss: 2.6365 - accuracy: 0.1059 - val_loss: 2.7712 - val_accuracy: 0.0667 Epoch 47/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6373 - accuracy: 0.1056 - val_loss: 2.7793 - val_accuracy: 0.0667 Epoch 48/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6365 - accuracy: 0.1058 - val_loss: 2.7843 - val_accuracy: 0.0667 Epoch 49/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6364 - accuracy: 0.1057 - val_loss: 2.7951 - val_accuracy: 0.0667 Epoch 50/50 142/142 [==============================] - 11s 76ms/step - loss: 2.6371 - accuracy: 0.1050 - val_loss: 2.7739 - val_accuracy: 0.0667
valLost = {k:v.history['val_accuracy'] for k,v in results.items()}
valLostCurve = pd.DataFrame(valLost)
valLostCurve.plot()
plt.title('Validation Accuracy')
plt.show()
def createModel(optimizer):
model = Sequential()
model.add(Conv2D(64, (3, 3), activation='relu',input_shape=(128,128,1)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(256, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.4))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer=optimizer, metrics=['accuracy'])
return model
from tensorflow.keras.wrappers.scikit_learn import KerasClassifier
from tensorflow.keras.layers import MaxPooling2D,GlobalAveragePooling2D
from sklearn.model_selection import RandomizedSearchCV, KFold
model = KerasClassifier(build_fn=createModel,epochs=30,batch_size=16)
paramGrid = {'optimizer':['rmsprop','adam']}
randomSearch = RandomizedSearchCV(model,param_distributions = paramGrid, cv=2)
randomSearchRes = randomSearch.fit(X_train,y_train)
print(f"Best Score: {randomSearchRes.best_score_} Best Params: {randomSearchRes.best_params_}")
C:\Users\kieny\AppData\Local\Temp\ipykernel_41576\2128538617.py:4: DeprecationWarning: KerasClassifier is deprecated, use Sci-Keras (https://github.com/adriangb/scikeras) instead. See https://www.adriangb.com/scikeras/stable/migration.html for help migrating. model = KerasClassifier(build_fn=createModel,epochs=30,batch_size=16)
Epoch 1/30
283/283 [==============================] - 7s 22ms/step - loss: 2.5719 - accuracy: 0.2242
Epoch 2/30
283/283 [==============================] - 6s 21ms/step - loss: 1.7125 - accuracy: 0.4703
Epoch 3/30
283/283 [==============================] - 6s 21ms/step - loss: 1.2255 - accuracy: 0.6214
Epoch 4/30
283/283 [==============================] - 6s 20ms/step - loss: 0.9365 - accuracy: 0.7233
Epoch 5/30
283/283 [==============================] - 6s 21ms/step - loss: 0.6763 - accuracy: 0.7933
Epoch 6/30
283/283 [==============================] - 6s 22ms/step - loss: 0.5224 - accuracy: 0.8482
Epoch 7/30
283/283 [==============================] - 6s 21ms/step - loss: 0.3989 - accuracy: 0.8768
Epoch 8/30
283/283 [==============================] - 6s 21ms/step - loss: 0.3332 - accuracy: 0.8979
Epoch 9/30
283/283 [==============================] - 6s 21ms/step - loss: 0.2945 - accuracy: 0.9140
Epoch 10/30
283/283 [==============================] - 6s 21ms/step - loss: 0.2890 - accuracy: 0.9185
Epoch 11/30
283/283 [==============================] - 6s 21ms/step - loss: 0.2859 - accuracy: 0.9276
Epoch 12/30
283/283 [==============================] - 6s 21ms/step - loss: 0.2395 - accuracy: 0.9320
Epoch 13/30
283/283 [==============================] - 6s 21ms/step - loss: 0.2315 - accuracy: 0.9426
Epoch 14/30
283/283 [==============================] - 6s 21ms/step - loss: 0.2588 - accuracy: 0.9375
Epoch 15/30
283/283 [==============================] - 6s 21ms/step - loss: 0.2186 - accuracy: 0.9386
Epoch 16/30
283/283 [==============================] - 6s 21ms/step - loss: 0.2755 - accuracy: 0.9360
Epoch 17/30
283/283 [==============================] - 6s 21ms/step - loss: 0.3063 - accuracy: 0.9384
Epoch 18/30
283/283 [==============================] - 6s 21ms/step - loss: 0.2723 - accuracy: 0.9358
Epoch 19/30
283/283 [==============================] - 6s 21ms/step - loss: 0.2827 - accuracy: 0.9346
Epoch 20/30
283/283 [==============================] - 6s 21ms/step - loss: 0.2639 - accuracy: 0.9327
Epoch 21/30
283/283 [==============================] - 6s 21ms/step - loss: 0.3021 - accuracy: 0.9327
Epoch 22/30
283/283 [==============================] - 6s 21ms/step - loss: 0.2949 - accuracy: 0.9309
Epoch 23/30
283/283 [==============================] - 6s 21ms/step - loss: 0.3540 - accuracy: 0.9327
Epoch 24/30
283/283 [==============================] - 6s 21ms/step - loss: 0.3605 - accuracy: 0.9276
Epoch 25/30
283/283 [==============================] - 6s 21ms/step - loss: 0.4070 - accuracy: 0.9225
Epoch 26/30
283/283 [==============================] - 6s 21ms/step - loss: 0.3766 - accuracy: 0.9140
Epoch 27/30
283/283 [==============================] - 6s 21ms/step - loss: 0.3263 - accuracy: 0.9183
Epoch 28/30
283/283 [==============================] - 6s 22ms/step - loss: 0.4635 - accuracy: 0.9136
Epoch 29/30
283/283 [==============================] - 6s 22ms/step - loss: 0.3446 - accuracy: 0.9200
Epoch 30/30
283/283 [==============================] - 6s 21ms/step - loss: 0.3824 - accuracy: 0.9180
283/283 [==============================] - 2s 7ms/step - loss: 1.9006 - accuracy: 0.7452
Epoch 1/30
283/283 [==============================] - 7s 21ms/step - loss: 2.5582 - accuracy: 0.2140
Epoch 2/30
283/283 [==============================] - 6s 21ms/step - loss: 1.7851 - accuracy: 0.4404
Epoch 3/30
283/283 [==============================] - 6s 21ms/step - loss: 1.2744 - accuracy: 0.5990
Epoch 4/30
283/283 [==============================] - 6s 21ms/step - loss: 0.9637 - accuracy: 0.6963
Epoch 5/30
283/283 [==============================] - 6s 21ms/step - loss: 0.7250 - accuracy: 0.7763
Epoch 6/30
283/283 [==============================] - 6s 21ms/step - loss: 0.5424 - accuracy: 0.8381
Epoch 7/30
283/283 [==============================] - 6s 21ms/step - loss: 0.4458 - accuracy: 0.8638
Epoch 8/30
283/283 [==============================] - 6s 21ms/step - loss: 0.3441 - accuracy: 0.8934
Epoch 9/30
283/283 [==============================] - 6s 20ms/step - loss: 0.3262 - accuracy: 0.9030
Epoch 10/30
283/283 [==============================] - 6s 20ms/step - loss: 0.2715 - accuracy: 0.9149
Epoch 11/30
283/283 [==============================] - 6s 21ms/step - loss: 0.2769 - accuracy: 0.9198
Epoch 12/30
283/283 [==============================] - 6s 22ms/step - loss: 0.2517 - accuracy: 0.9296
Epoch 13/30
283/283 [==============================] - 6s 21ms/step - loss: 0.2074 - accuracy: 0.9415
Epoch 14/30
283/283 [==============================] - 6s 21ms/step - loss: 0.2361 - accuracy: 0.9371
Epoch 15/30
283/283 [==============================] - 6s 21ms/step - loss: 0.2192 - accuracy: 0.9440
Epoch 16/30
283/283 [==============================] - 6s 21ms/step - loss: 0.2918 - accuracy: 0.9351
Epoch 17/30
283/283 [==============================] - 6s 22ms/step - loss: 0.2508 - accuracy: 0.9335
Epoch 18/30
283/283 [==============================] - 6s 21ms/step - loss: 0.2515 - accuracy: 0.9366
Epoch 19/30
283/283 [==============================] - 6s 21ms/step - loss: 0.2727 - accuracy: 0.9340
Epoch 20/30
283/283 [==============================] - 6s 21ms/step - loss: 0.2728 - accuracy: 0.9369
Epoch 21/30
283/283 [==============================] - 6s 21ms/step - loss: 0.2843 - accuracy: 0.9307
Epoch 22/30
283/283 [==============================] - 6s 21ms/step - loss: 0.3033 - accuracy: 0.9273
Epoch 23/30
283/283 [==============================] - 6s 21ms/step - loss: 0.3538 - accuracy: 0.9238
Epoch 24/30
283/283 [==============================] - 6s 21ms/step - loss: 0.3506 - accuracy: 0.9269
Epoch 25/30
283/283 [==============================] - 6s 21ms/step - loss: 0.3593 - accuracy: 0.9231
Epoch 26/30
283/283 [==============================] - 6s 21ms/step - loss: 0.3439 - accuracy: 0.9229
Epoch 27/30
283/283 [==============================] - 6s 21ms/step - loss: 0.3218 - accuracy: 0.9278
Epoch 28/30
283/283 [==============================] - 6s 21ms/step - loss: 0.3095 - accuracy: 0.9307
Epoch 29/30
283/283 [==============================] - 6s 21ms/step - loss: 0.3774 - accuracy: 0.9194
Epoch 30/30
283/283 [==============================] - 6s 21ms/step - loss: 0.3735 - accuracy: 0.9198
283/283 [==============================] - 2s 6ms/step - loss: 1.3423 - accuracy: 0.7988
Epoch 1/30
283/283 [==============================] - 6s 18ms/step - loss: 2.4059 - accuracy: 0.2140
Epoch 2/30
283/283 [==============================] - 5s 18ms/step - loss: 1.7412 - accuracy: 0.4468
Epoch 3/30
283/283 [==============================] - 5s 18ms/step - loss: 1.3672 - accuracy: 0.5700
Epoch 4/30
283/283 [==============================] - 5s 18ms/step - loss: 1.0277 - accuracy: 0.6768
Epoch 5/30
283/283 [==============================] - 5s 18ms/step - loss: 0.7481 - accuracy: 0.7506
Epoch 6/30
283/283 [==============================] - 5s 18ms/step - loss: 0.5564 - accuracy: 0.8141
Epoch 7/30
283/283 [==============================] - 5s 18ms/step - loss: 0.4246 - accuracy: 0.8600
Epoch 8/30
283/283 [==============================] - 5s 18ms/step - loss: 0.3461 - accuracy: 0.8901
Epoch 9/30
283/283 [==============================] - 5s 18ms/step - loss: 0.2880 - accuracy: 0.9061
Epoch 10/30
283/283 [==============================] - 5s 18ms/step - loss: 0.2538 - accuracy: 0.9169
Epoch 11/30
283/283 [==============================] - 5s 18ms/step - loss: 0.2116 - accuracy: 0.9276
Epoch 12/30
283/283 [==============================] - 5s 18ms/step - loss: 0.2149 - accuracy: 0.9315
Epoch 13/30
283/283 [==============================] - 5s 18ms/step - loss: 0.1756 - accuracy: 0.9386
Epoch 14/30
283/283 [==============================] - 5s 18ms/step - loss: 0.1505 - accuracy: 0.9475
Epoch 15/30
283/283 [==============================] - 5s 18ms/step - loss: 0.1575 - accuracy: 0.9530
Epoch 16/30
283/283 [==============================] - 5s 18ms/step - loss: 0.1400 - accuracy: 0.9572
Epoch 17/30
283/283 [==============================] - 5s 18ms/step - loss: 0.1461 - accuracy: 0.9508
Epoch 18/30
283/283 [==============================] - 5s 18ms/step - loss: 0.1099 - accuracy: 0.9637
Epoch 19/30
283/283 [==============================] - 5s 18ms/step - loss: 0.1424 - accuracy: 0.9504
Epoch 20/30
283/283 [==============================] - 5s 18ms/step - loss: 0.1492 - accuracy: 0.9517
Epoch 21/30
283/283 [==============================] - 5s 18ms/step - loss: 0.1035 - accuracy: 0.9677
Epoch 22/30
283/283 [==============================] - 5s 18ms/step - loss: 0.1235 - accuracy: 0.9628
Epoch 23/30
283/283 [==============================] - 5s 18ms/step - loss: 0.0885 - accuracy: 0.9719
Epoch 24/30
283/283 [==============================] - 5s 18ms/step - loss: 0.1606 - accuracy: 0.9537
Epoch 25/30
283/283 [==============================] - 5s 18ms/step - loss: 0.0987 - accuracy: 0.9690
Epoch 26/30
283/283 [==============================] - 5s 18ms/step - loss: 0.0718 - accuracy: 0.9772
Epoch 27/30
283/283 [==============================] - 5s 18ms/step - loss: 0.1015 - accuracy: 0.9679
Epoch 28/30
283/283 [==============================] - 5s 18ms/step - loss: 0.0838 - accuracy: 0.9739
Epoch 29/30
283/283 [==============================] - 5s 18ms/step - loss: 0.1036 - accuracy: 0.9677
Epoch 30/30
283/283 [==============================] - 5s 18ms/step - loss: 0.0730 - accuracy: 0.9765
283/283 [==============================] - 2s 6ms/step - loss: 1.0131 - accuracy: 0.8059
Epoch 1/30
283/283 [==============================] - 6s 19ms/step - loss: 2.4706 - accuracy: 0.1910
Epoch 2/30
283/283 [==============================] - 5s 19ms/step - loss: 1.8455 - accuracy: 0.4129
Epoch 3/30
283/283 [==============================] - 5s 19ms/step - loss: 1.5003 - accuracy: 0.5233
Epoch 4/30
283/283 [==============================] - 5s 19ms/step - loss: 1.1492 - accuracy: 0.6305
Epoch 5/30
283/283 [==============================] - 5s 19ms/step - loss: 0.8667 - accuracy: 0.7187
Epoch 6/30
283/283 [==============================] - 5s 19ms/step - loss: 0.6972 - accuracy: 0.7685
Epoch 7/30
283/283 [==============================] - 5s 19ms/step - loss: 0.5315 - accuracy: 0.8223
Epoch 8/30
283/283 [==============================] - 5s 19ms/step - loss: 0.4382 - accuracy: 0.8551
Epoch 9/30
283/283 [==============================] - 5s 18ms/step - loss: 0.3848 - accuracy: 0.8742
Epoch 10/30
283/283 [==============================] - 5s 18ms/step - loss: 0.2926 - accuracy: 0.9016
Epoch 11/30
283/283 [==============================] - 5s 18ms/step - loss: 0.2824 - accuracy: 0.9070
Epoch 12/30
283/283 [==============================] - 5s 18ms/step - loss: 0.2222 - accuracy: 0.9269
Epoch 13/30
283/283 [==============================] - 5s 18ms/step - loss: 0.2002 - accuracy: 0.9360
Epoch 14/30
283/283 [==============================] - 5s 18ms/step - loss: 0.1866 - accuracy: 0.9366
Epoch 15/30
283/283 [==============================] - 5s 18ms/step - loss: 0.1711 - accuracy: 0.9400
Epoch 16/30
283/283 [==============================] - 5s 18ms/step - loss: 0.1994 - accuracy: 0.9358
Epoch 17/30
283/283 [==============================] - 5s 18ms/step - loss: 0.1803 - accuracy: 0.9406
Epoch 18/30
283/283 [==============================] - 5s 18ms/step - loss: 0.1685 - accuracy: 0.9442
Epoch 19/30
283/283 [==============================] - 5s 18ms/step - loss: 0.1199 - accuracy: 0.9575
Epoch 20/30
283/283 [==============================] - 5s 18ms/step - loss: 0.1322 - accuracy: 0.9541
Epoch 21/30
283/283 [==============================] - 5s 18ms/step - loss: 0.1472 - accuracy: 0.9513
Epoch 22/30
283/283 [==============================] - 5s 18ms/step - loss: 0.1167 - accuracy: 0.9572
Epoch 23/30
283/283 [==============================] - 5s 18ms/step - loss: 0.0884 - accuracy: 0.9716
Epoch 24/30
283/283 [==============================] - 5s 19ms/step - loss: 0.1213 - accuracy: 0.9599
Epoch 25/30
283/283 [==============================] - 5s 18ms/step - loss: 0.1076 - accuracy: 0.9623
Epoch 26/30
283/283 [==============================] - 5s 18ms/step - loss: 0.1200 - accuracy: 0.9626
Epoch 27/30
283/283 [==============================] - 5s 18ms/step - loss: 0.1090 - accuracy: 0.9623
Epoch 28/30
283/283 [==============================] - 5s 18ms/step - loss: 0.0982 - accuracy: 0.9670
Epoch 29/30
283/283 [==============================] - 5s 17ms/step - loss: 0.1023 - accuracy: 0.9665
Epoch 30/30
283/283 [==============================] - 5s 17ms/step - loss: 0.1343 - accuracy: 0.9584
283/283 [==============================] - 2s 6ms/step - loss: 0.8429 - accuracy: 0.8210
Epoch 1/30
565/565 [==============================] - 10s 18ms/step - loss: 2.1279 - accuracy: 0.3033
Epoch 2/30
565/565 [==============================] - 10s 17ms/step - loss: 1.3760 - accuracy: 0.5594
Epoch 3/30
565/565 [==============================] - 10s 18ms/step - loss: 1.0042 - accuracy: 0.6799
Epoch 4/30
565/565 [==============================] - 10s 18ms/step - loss: 0.7333 - accuracy: 0.7683
Epoch 5/30
565/565 [==============================] - 10s 18ms/step - loss: 0.5722 - accuracy: 0.8108
Epoch 6/30
565/565 [==============================] - 10s 18ms/step - loss: 0.4553 - accuracy: 0.8480
Epoch 7/30
565/565 [==============================] - 10s 18ms/step - loss: 0.3767 - accuracy: 0.8808
Epoch 8/30
565/565 [==============================] - 10s 18ms/step - loss: 0.3203 - accuracy: 0.8928
Epoch 9/30
565/565 [==============================] - 10s 18ms/step - loss: 0.2926 - accuracy: 0.9035
Epoch 10/30
565/565 [==============================] - 10s 18ms/step - loss: 0.2518 - accuracy: 0.9196
Epoch 11/30
565/565 [==============================] - 10s 18ms/step - loss: 0.2363 - accuracy: 0.9217
Epoch 12/30
565/565 [==============================] - 10s 18ms/step - loss: 0.2226 - accuracy: 0.9279
Epoch 13/30
565/565 [==============================] - 10s 18ms/step - loss: 0.1788 - accuracy: 0.9387
Epoch 14/30
565/565 [==============================] - 10s 18ms/step - loss: 0.1946 - accuracy: 0.9353
Epoch 15/30
565/565 [==============================] - 10s 18ms/step - loss: 0.1764 - accuracy: 0.9380
Epoch 16/30
565/565 [==============================] - 10s 18ms/step - loss: 0.1639 - accuracy: 0.9488
Epoch 17/30
565/565 [==============================] - 10s 18ms/step - loss: 0.1409 - accuracy: 0.9518
Epoch 18/30
565/565 [==============================] - 10s 18ms/step - loss: 0.1439 - accuracy: 0.9527
Epoch 19/30
565/565 [==============================] - 10s 18ms/step - loss: 0.1468 - accuracy: 0.9505
Epoch 20/30
565/565 [==============================] - 10s 18ms/step - loss: 0.1504 - accuracy: 0.9508
Epoch 21/30
565/565 [==============================] - 10s 18ms/step - loss: 0.1120 - accuracy: 0.9618
Epoch 22/30
565/565 [==============================] - 10s 17ms/step - loss: 0.1155 - accuracy: 0.9613
Epoch 23/30
565/565 [==============================] - 10s 18ms/step - loss: 0.1184 - accuracy: 0.9642
Epoch 24/30
565/565 [==============================] - 10s 17ms/step - loss: 0.1289 - accuracy: 0.9578
Epoch 25/30
565/565 [==============================] - 11s 19ms/step - loss: 0.0913 - accuracy: 0.9673
Epoch 26/30
565/565 [==============================] - 10s 18ms/step - loss: 0.1220 - accuracy: 0.9619
Epoch 27/30
565/565 [==============================] - 11s 19ms/step - loss: 0.1101 - accuracy: 0.9647
Epoch 28/30
565/565 [==============================] - 10s 17ms/step - loss: 0.1104 - accuracy: 0.9654
Epoch 29/30
565/565 [==============================] - 10s 17ms/step - loss: 0.0867 - accuracy: 0.9702
Epoch 30/30
565/565 [==============================] - 10s 18ms/step - loss: 0.0902 - accuracy: 0.9689
Best Score: 0.8134692311286926 Best Params: {'optimizer': 'adam'}
from tensorflow.keras.callbacks import LearningRateScheduler
def scheduleLR(epoch,lr):
if epoch<15:
return lr
else:
return lr*tf.math.exp(-0.1)
model = Sequential()
model.add(Conv2D(64, (3, 3), activation='relu',input_shape=(128,128,1)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(256, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(512, activation='relu'))
model.add(Dropout(0.4))
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.4))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
callback = LearningRateScheduler(scheduleLR)
history = model.fit(X_train,y_train, validation_data=(X_val,y_val),epochs=50, batch_size=64,callbacks=[callback])
scores = model.evaluate(X_test,y_test)
print("CNN Error: %.2f%%" % (100-scores[1]*100))
plotAUC(history)
Epoch 1/50 142/142 [==============================] - 10s 64ms/step - loss: 2.4743 - accuracy: 0.1683 - val_loss: 2.0606 - val_accuracy: 0.3423 - lr: 0.0010 Epoch 2/50 142/142 [==============================] - 9s 61ms/step - loss: 1.7633 - accuracy: 0.4335 - val_loss: 1.5273 - val_accuracy: 0.4917 - lr: 0.0010 Epoch 3/50 142/142 [==============================] - 9s 61ms/step - loss: 1.3556 - accuracy: 0.5748 - val_loss: 1.0579 - val_accuracy: 0.6690 - lr: 0.0010 Epoch 4/50 142/142 [==============================] - 9s 62ms/step - loss: 1.0224 - accuracy: 0.6693 - val_loss: 1.3213 - val_accuracy: 0.5757 - lr: 0.0010 Epoch 5/50 142/142 [==============================] - 9s 62ms/step - loss: 0.8463 - accuracy: 0.7364 - val_loss: 0.7001 - val_accuracy: 0.7873 - lr: 0.0010 Epoch 6/50 142/142 [==============================] - 9s 63ms/step - loss: 0.6485 - accuracy: 0.7910 - val_loss: 0.5612 - val_accuracy: 0.8347 - lr: 0.0010 Epoch 7/50 142/142 [==============================] - 9s 64ms/step - loss: 0.5161 - accuracy: 0.8314 - val_loss: 0.5537 - val_accuracy: 0.8300 - lr: 0.0010 Epoch 8/50 142/142 [==============================] - 9s 65ms/step - loss: 0.4557 - accuracy: 0.8557 - val_loss: 0.5652 - val_accuracy: 0.8343 - lr: 0.0010 Epoch 9/50 142/142 [==============================] - 9s 64ms/step - loss: 0.3735 - accuracy: 0.8825 - val_loss: 0.4173 - val_accuracy: 0.8687 - lr: 0.0010 Epoch 10/50 142/142 [==============================] - 9s 63ms/step - loss: 0.3415 - accuracy: 0.8931 - val_loss: 0.3641 - val_accuracy: 0.8907 - lr: 0.0010 Epoch 11/50 142/142 [==============================] - 9s 62ms/step - loss: 0.2662 - accuracy: 0.9137 - val_loss: 0.6715 - val_accuracy: 0.8013 - lr: 0.0010 Epoch 12/50 142/142 [==============================] - 9s 63ms/step - loss: 0.2388 - accuracy: 0.9222 - val_loss: 0.4036 - val_accuracy: 0.8830 - lr: 0.0010 Epoch 13/50 142/142 [==============================] - 9s 66ms/step - loss: 0.2205 - accuracy: 0.9301 - val_loss: 0.4045 - val_accuracy: 0.8857 - lr: 0.0010 Epoch 14/50 142/142 [==============================] - 9s 63ms/step - loss: 0.1875 - accuracy: 0.9430 - val_loss: 0.4116 - val_accuracy: 0.8843 - lr: 0.0010 Epoch 15/50 142/142 [==============================] - 9s 63ms/step - loss: 0.1909 - accuracy: 0.9394 - val_loss: 0.4206 - val_accuracy: 0.8810 - lr: 0.0010 Epoch 16/50 142/142 [==============================] - 9s 62ms/step - loss: 0.1729 - accuracy: 0.9464 - val_loss: 0.6512 - val_accuracy: 0.8200 - lr: 9.0484e-04 Epoch 17/50 142/142 [==============================] - 9s 62ms/step - loss: 0.1475 - accuracy: 0.9541 - val_loss: 0.3913 - val_accuracy: 0.8950 - lr: 8.1873e-04 Epoch 18/50 142/142 [==============================] - 9s 62ms/step - loss: 0.1138 - accuracy: 0.9626 - val_loss: 0.3330 - val_accuracy: 0.9113 - lr: 7.4082e-04 Epoch 19/50 142/142 [==============================] - 9s 62ms/step - loss: 0.1038 - accuracy: 0.9668 - val_loss: 0.3599 - val_accuracy: 0.9053 - lr: 6.7032e-04 Epoch 20/50 142/142 [==============================] - 9s 64ms/step - loss: 0.0943 - accuracy: 0.9682 - val_loss: 0.3645 - val_accuracy: 0.9087 - lr: 6.0653e-04 Epoch 21/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0824 - accuracy: 0.9726 - val_loss: 0.3356 - val_accuracy: 0.9150 - lr: 5.4881e-04 Epoch 22/50 142/142 [==============================] - 9s 62ms/step - loss: 0.0706 - accuracy: 0.9772 - val_loss: 0.4019 - val_accuracy: 0.9043 - lr: 4.9659e-04 Epoch 23/50 142/142 [==============================] - 9s 67ms/step - loss: 0.0602 - accuracy: 0.9801 - val_loss: 0.3437 - val_accuracy: 0.9133 - lr: 4.4933e-04 Epoch 24/50 142/142 [==============================] - 9s 66ms/step - loss: 0.0589 - accuracy: 0.9815 - val_loss: 0.3875 - val_accuracy: 0.9107 - lr: 4.0657e-04 Epoch 25/50 142/142 [==============================] - 9s 65ms/step - loss: 0.0605 - accuracy: 0.9808 - val_loss: 0.3225 - val_accuracy: 0.9233 - lr: 3.6788e-04 Epoch 26/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0452 - accuracy: 0.9843 - val_loss: 0.3303 - val_accuracy: 0.9267 - lr: 3.3287e-04 Epoch 27/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0447 - accuracy: 0.9856 - val_loss: 0.3996 - val_accuracy: 0.9123 - lr: 3.0119e-04 Epoch 28/50 142/142 [==============================] - 9s 67ms/step - loss: 0.0434 - accuracy: 0.9864 - val_loss: 0.3407 - val_accuracy: 0.9223 - lr: 2.7253e-04 Epoch 29/50 142/142 [==============================] - 9s 65ms/step - loss: 0.0481 - accuracy: 0.9840 - val_loss: 0.3388 - val_accuracy: 0.9207 - lr: 2.4660e-04 Epoch 30/50 142/142 [==============================] - 10s 67ms/step - loss: 0.0346 - accuracy: 0.9900 - val_loss: 0.3580 - val_accuracy: 0.9203 - lr: 2.2313e-04 Epoch 31/50 142/142 [==============================] - 9s 67ms/step - loss: 0.0361 - accuracy: 0.9874 - val_loss: 0.3168 - val_accuracy: 0.9273 - lr: 2.0190e-04 Epoch 32/50 142/142 [==============================] - 10s 67ms/step - loss: 0.0294 - accuracy: 0.9905 - val_loss: 0.3501 - val_accuracy: 0.9270 - lr: 1.8268e-04 Epoch 33/50 142/142 [==============================] - 9s 66ms/step - loss: 0.0375 - accuracy: 0.9889 - val_loss: 0.3529 - val_accuracy: 0.9267 - lr: 1.6530e-04 Epoch 34/50 142/142 [==============================] - 9s 67ms/step - loss: 0.0339 - accuracy: 0.9888 - val_loss: 0.3528 - val_accuracy: 0.9227 - lr: 1.4957e-04 Epoch 35/50 142/142 [==============================] - 9s 65ms/step - loss: 0.0399 - accuracy: 0.9872 - val_loss: 0.3472 - val_accuracy: 0.9240 - lr: 1.3534e-04 Epoch 36/50 142/142 [==============================] - 10s 67ms/step - loss: 0.0321 - accuracy: 0.9889 - val_loss: 0.3367 - val_accuracy: 0.9263 - lr: 1.2246e-04 Epoch 37/50 142/142 [==============================] - 10s 67ms/step - loss: 0.0291 - accuracy: 0.9914 - val_loss: 0.3421 - val_accuracy: 0.9247 - lr: 1.1080e-04 Epoch 38/50 142/142 [==============================] - 10s 68ms/step - loss: 0.0303 - accuracy: 0.9915 - val_loss: 0.3404 - val_accuracy: 0.9283 - lr: 1.0026e-04 Epoch 39/50 142/142 [==============================] - 10s 67ms/step - loss: 0.0249 - accuracy: 0.9929 - val_loss: 0.3417 - val_accuracy: 0.9283 - lr: 9.0718e-05 Epoch 40/50 142/142 [==============================] - 9s 67ms/step - loss: 0.0302 - accuracy: 0.9893 - val_loss: 0.3393 - val_accuracy: 0.9263 - lr: 8.2085e-05 Epoch 41/50 142/142 [==============================] - 9s 66ms/step - loss: 0.0259 - accuracy: 0.9921 - val_loss: 0.3494 - val_accuracy: 0.9257 - lr: 7.4273e-05 Epoch 42/50 142/142 [==============================] - 9s 65ms/step - loss: 0.0271 - accuracy: 0.9914 - val_loss: 0.3431 - val_accuracy: 0.9290 - lr: 6.7205e-05 Epoch 43/50 142/142 [==============================] - 9s 66ms/step - loss: 0.0232 - accuracy: 0.9925 - val_loss: 0.3500 - val_accuracy: 0.9283 - lr: 6.0810e-05 Epoch 44/50 142/142 [==============================] - 9s 66ms/step - loss: 0.0257 - accuracy: 0.9920 - val_loss: 0.3330 - val_accuracy: 0.9287 - lr: 5.5023e-05 Epoch 45/50 142/142 [==============================] - 9s 67ms/step - loss: 0.0241 - accuracy: 0.9920 - val_loss: 0.3558 - val_accuracy: 0.9280 - lr: 4.9787e-05 Epoch 46/50 142/142 [==============================] - 10s 67ms/step - loss: 0.0246 - accuracy: 0.9920 - val_loss: 0.3513 - val_accuracy: 0.9260 - lr: 4.5049e-05 Epoch 47/50 142/142 [==============================] - 9s 66ms/step - loss: 0.0262 - accuracy: 0.9912 - val_loss: 0.3518 - val_accuracy: 0.9257 - lr: 4.0762e-05 Epoch 48/50 142/142 [==============================] - 9s 66ms/step - loss: 0.0266 - accuracy: 0.9918 - val_loss: 0.3606 - val_accuracy: 0.9287 - lr: 3.6883e-05 Epoch 49/50 142/142 [==============================] - 9s 65ms/step - loss: 0.0235 - accuracy: 0.9934 - val_loss: 0.3584 - val_accuracy: 0.9267 - lr: 3.3373e-05 Epoch 50/50 142/142 [==============================] - 9s 66ms/step - loss: 0.0193 - accuracy: 0.9945 - val_loss: 0.3532 - val_accuracy: 0.9250 - lr: 3.0197e-05 94/94 [==============================] - 1s 10ms/step - loss: 0.3272 - accuracy: 0.9277 CNN Error: 7.23%
model.summary()
Model: "sequential_2"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
conv2d_6 (Conv2D) (None, 126, 126, 64) 640
max_pooling2d_6 (MaxPooling (None, 63, 63, 64) 0
2D)
dropout_10 (Dropout) (None, 63, 63, 64) 0
conv2d_7 (Conv2D) (None, 61, 61, 128) 73856
max_pooling2d_7 (MaxPooling (None, 30, 30, 128) 0
2D)
dropout_11 (Dropout) (None, 30, 30, 128) 0
conv2d_8 (Conv2D) (None, 28, 28, 256) 295168
max_pooling2d_8 (MaxPooling (None, 14, 14, 256) 0
2D)
dropout_12 (Dropout) (None, 14, 14, 256) 0
flatten_2 (Flatten) (None, 50176) 0
dense_6 (Dense) (None, 512) 25690624
dropout_13 (Dropout) (None, 512) 0
dense_7 (Dense) (None, 256) 131328
dropout_14 (Dropout) (None, 256) 0
dense_8 (Dense) (None, 15) 3855
=================================================================
Total params: 26,195,471
Trainable params: 26,195,471
Non-trainable params: 0
_________________________________________________________________
from tensorflow.keras.callbacks import LearningRateScheduler
def scheduleLR(epoch,lr):
if epoch<15:
return lr
else:
return lr*tf.math.exp(-0.1)
model = Sequential()
model.add(Conv2D(64, (3, 3), activation='relu',input_shape=(128,128,1)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(256, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(512, activation='relu'))
model.add(Dropout(0.4))
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.4))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
callback = LearningRateScheduler(scheduleLR)
history = model.fit(X_train,y_train, validation_data=(X_val,y_val),epochs=50, batch_size=64,callbacks=[callback])
model.save_weights("./Best Model Weights/bestCNN128by128.h5")
scores = model.evaluate(X_test,y_test)
print("CNN Error: %.2f%%" % (100-scores[1]*100))
plotAUC(history)
Epoch 1/50 142/142 [==============================] - 10s 68ms/step - loss: 2.4376 - accuracy: 0.1844 - val_loss: 1.9839 - val_accuracy: 0.3913 - lr: 0.0010 Epoch 2/50 142/142 [==============================] - 9s 60ms/step - loss: 1.7014 - accuracy: 0.4513 - val_loss: 1.4992 - val_accuracy: 0.5040 - lr: 0.0010 Epoch 3/50 142/142 [==============================] - 8s 60ms/step - loss: 1.2909 - accuracy: 0.5904 - val_loss: 1.2357 - val_accuracy: 0.6217 - lr: 0.0010 Epoch 4/50 142/142 [==============================] - 8s 60ms/step - loss: 0.9580 - accuracy: 0.6944 - val_loss: 0.7227 - val_accuracy: 0.7710 - lr: 0.0010 Epoch 5/50 142/142 [==============================] - 8s 60ms/step - loss: 0.6989 - accuracy: 0.7779 - val_loss: 1.5557 - val_accuracy: 0.5613 - lr: 0.0010 Epoch 6/50 142/142 [==============================] - 9s 60ms/step - loss: 0.5968 - accuracy: 0.8134 - val_loss: 0.5501 - val_accuracy: 0.8313 - lr: 0.0010 Epoch 7/50 142/142 [==============================] - 9s 60ms/step - loss: 0.4103 - accuracy: 0.8663 - val_loss: 0.4637 - val_accuracy: 0.8657 - lr: 0.0010 Epoch 8/50 142/142 [==============================] - 9s 60ms/step - loss: 0.3413 - accuracy: 0.8918 - val_loss: 0.4313 - val_accuracy: 0.8697 - lr: 0.0010 Epoch 9/50 142/142 [==============================] - 9s 60ms/step - loss: 0.2805 - accuracy: 0.9121 - val_loss: 0.3907 - val_accuracy: 0.8850 - lr: 0.0010 Epoch 10/50 142/142 [==============================] - 9s 60ms/step - loss: 0.2318 - accuracy: 0.9259 - val_loss: 0.4379 - val_accuracy: 0.8733 - lr: 0.0010 Epoch 11/50 142/142 [==============================] - 9s 60ms/step - loss: 0.2156 - accuracy: 0.9282 - val_loss: 0.4541 - val_accuracy: 0.8790 - lr: 0.0010 Epoch 12/50 142/142 [==============================] - 9s 60ms/step - loss: 0.2047 - accuracy: 0.9352 - val_loss: 0.3602 - val_accuracy: 0.9027 - lr: 0.0010 Epoch 13/50 142/142 [==============================] - 9s 60ms/step - loss: 0.1462 - accuracy: 0.9528 - val_loss: 0.3841 - val_accuracy: 0.8963 - lr: 0.0010 Epoch 14/50 142/142 [==============================] - 9s 61ms/step - loss: 0.1699 - accuracy: 0.9462 - val_loss: 0.3787 - val_accuracy: 0.9030 - lr: 0.0010 Epoch 15/50 142/142 [==============================] - 9s 62ms/step - loss: 0.1329 - accuracy: 0.9586 - val_loss: 0.5032 - val_accuracy: 0.8830 - lr: 0.0010 Epoch 16/50 142/142 [==============================] - 9s 60ms/step - loss: 0.0984 - accuracy: 0.9685 - val_loss: 0.5633 - val_accuracy: 0.8653 - lr: 9.0484e-04 Epoch 17/50 142/142 [==============================] - 9s 60ms/step - loss: 0.1086 - accuracy: 0.9658 - val_loss: 0.3868 - val_accuracy: 0.9030 - lr: 8.1873e-04 Epoch 18/50 142/142 [==============================] - 9s 65ms/step - loss: 0.0885 - accuracy: 0.9732 - val_loss: 0.3589 - val_accuracy: 0.9127 - lr: 7.4082e-04 Epoch 19/50 142/142 [==============================] - 9s 64ms/step - loss: 0.0702 - accuracy: 0.9770 - val_loss: 0.3620 - val_accuracy: 0.9087 - lr: 6.7032e-04 Epoch 20/50 142/142 [==============================] - 9s 61ms/step - loss: 0.0556 - accuracy: 0.9814 - val_loss: 0.4220 - val_accuracy: 0.9060 - lr: 6.0653e-04 Epoch 21/50 142/142 [==============================] - 9s 60ms/step - loss: 0.0528 - accuracy: 0.9829 - val_loss: 0.3712 - val_accuracy: 0.9127 - lr: 5.4881e-04 Epoch 22/50 142/142 [==============================] - 9s 60ms/step - loss: 0.0502 - accuracy: 0.9840 - val_loss: 0.3745 - val_accuracy: 0.9187 - lr: 4.9659e-04 Epoch 23/50 142/142 [==============================] - 9s 65ms/step - loss: 0.0420 - accuracy: 0.9873 - val_loss: 0.3507 - val_accuracy: 0.9193 - lr: 4.4933e-04 Epoch 24/50 142/142 [==============================] - 9s 64ms/step - loss: 0.0411 - accuracy: 0.9855 - val_loss: 0.3464 - val_accuracy: 0.9223 - lr: 4.0657e-04 Epoch 25/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0360 - accuracy: 0.9898 - val_loss: 0.3405 - val_accuracy: 0.9183 - lr: 3.6788e-04 Epoch 26/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0315 - accuracy: 0.9905 - val_loss: 0.4125 - val_accuracy: 0.9063 - lr: 3.3287e-04 Epoch 27/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0329 - accuracy: 0.9901 - val_loss: 0.3472 - val_accuracy: 0.9217 - lr: 3.0119e-04 Epoch 28/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0258 - accuracy: 0.9924 - val_loss: 0.3901 - val_accuracy: 0.9183 - lr: 2.7253e-04 Epoch 29/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0254 - accuracy: 0.9912 - val_loss: 0.3741 - val_accuracy: 0.9173 - lr: 2.4660e-04 Epoch 30/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0289 - accuracy: 0.9917 - val_loss: 0.3838 - val_accuracy: 0.9250 - lr: 2.2313e-04 Epoch 31/50 142/142 [==============================] - 9s 64ms/step - loss: 0.0234 - accuracy: 0.9916 - val_loss: 0.3798 - val_accuracy: 0.9180 - lr: 2.0190e-04 Epoch 32/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0226 - accuracy: 0.9930 - val_loss: 0.3775 - val_accuracy: 0.9180 - lr: 1.8268e-04 Epoch 33/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0250 - accuracy: 0.9916 - val_loss: 0.3916 - val_accuracy: 0.9203 - lr: 1.6530e-04 Epoch 34/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0164 - accuracy: 0.9947 - val_loss: 0.3988 - val_accuracy: 0.9237 - lr: 1.4957e-04 Epoch 35/50 142/142 [==============================] - 9s 64ms/step - loss: 0.0186 - accuracy: 0.9941 - val_loss: 0.3775 - val_accuracy: 0.9193 - lr: 1.3534e-04 Epoch 36/50 142/142 [==============================] - 9s 61ms/step - loss: 0.0216 - accuracy: 0.9936 - val_loss: 0.4080 - val_accuracy: 0.9153 - lr: 1.2246e-04 Epoch 37/50 142/142 [==============================] - 9s 61ms/step - loss: 0.0163 - accuracy: 0.9948 - val_loss: 0.3722 - val_accuracy: 0.9217 - lr: 1.1080e-04 Epoch 38/50 142/142 [==============================] - 9s 64ms/step - loss: 0.0184 - accuracy: 0.9951 - val_loss: 0.3908 - val_accuracy: 0.9187 - lr: 1.0026e-04 Epoch 39/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0176 - accuracy: 0.9948 - val_loss: 0.4315 - val_accuracy: 0.9170 - lr: 9.0718e-05 Epoch 40/50 142/142 [==============================] - 9s 61ms/step - loss: 0.0212 - accuracy: 0.9921 - val_loss: 0.3798 - val_accuracy: 0.9223 - lr: 8.2085e-05 Epoch 41/50 142/142 [==============================] - 9s 60ms/step - loss: 0.0165 - accuracy: 0.9959 - val_loss: 0.3690 - val_accuracy: 0.9227 - lr: 7.4273e-05 Epoch 42/50 142/142 [==============================] - 9s 60ms/step - loss: 0.0160 - accuracy: 0.9952 - val_loss: 0.3824 - val_accuracy: 0.9240 - lr: 6.7205e-05 Epoch 43/50 142/142 [==============================] - 9s 64ms/step - loss: 0.0142 - accuracy: 0.9958 - val_loss: 0.3983 - val_accuracy: 0.9190 - lr: 6.0810e-05 Epoch 44/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0146 - accuracy: 0.9956 - val_loss: 0.3850 - val_accuracy: 0.9237 - lr: 5.5023e-05 Epoch 45/50 142/142 [==============================] - 9s 62ms/step - loss: 0.0110 - accuracy: 0.9963 - val_loss: 0.3866 - val_accuracy: 0.9223 - lr: 4.9787e-05 Epoch 46/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0141 - accuracy: 0.9953 - val_loss: 0.3911 - val_accuracy: 0.9223 - lr: 4.5049e-05 Epoch 47/50 142/142 [==============================] - 9s 61ms/step - loss: 0.0150 - accuracy: 0.9956 - val_loss: 0.3933 - val_accuracy: 0.9203 - lr: 4.0762e-05 Epoch 48/50 142/142 [==============================] - 9s 60ms/step - loss: 0.0137 - accuracy: 0.9957 - val_loss: 0.3739 - val_accuracy: 0.9270 - lr: 3.6883e-05 Epoch 49/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0148 - accuracy: 0.9955 - val_loss: 0.4008 - val_accuracy: 0.9227 - lr: 3.3373e-05 Epoch 50/50 142/142 [==============================] - 9s 63ms/step - loss: 0.0141 - accuracy: 0.9952 - val_loss: 0.3816 - val_accuracy: 0.9227 - lr: 3.0197e-05 94/94 [==============================] - 1s 9ms/step - loss: 0.3254 - accuracy: 0.9280 CNN Error: 7.20%
model.summary()
Model: "sequential"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
conv2d (Conv2D) (None, 126, 126, 64) 640
max_pooling2d (MaxPooling2D (None, 63, 63, 64) 0
)
dropout (Dropout) (None, 63, 63, 64) 0
conv2d_1 (Conv2D) (None, 61, 61, 128) 73856
max_pooling2d_1 (MaxPooling (None, 30, 30, 128) 0
2D)
dropout_1 (Dropout) (None, 30, 30, 128) 0
conv2d_2 (Conv2D) (None, 28, 28, 256) 295168
max_pooling2d_2 (MaxPooling (None, 14, 14, 256) 0
2D)
dropout_2 (Dropout) (None, 14, 14, 256) 0
flatten (Flatten) (None, 50176) 0
dense (Dense) (None, 512) 25690624
dropout_3 (Dropout) (None, 512) 0
dense_1 (Dense) (None, 256) 131328
dropout_4 (Dropout) (None, 256) 0
dense_2 (Dense) (None, 15) 3855
=================================================================
Total params: 26,195,471
Trainable params: 26,195,471
Non-trainable params: 0
_________________________________________________________________
# pip install pydot
# pip install graphviz
# conda install graphviz
# Restart kernal after installation
plot_model(model,show_shapes=True,show_layer_names=True)
from tensorflow.keras.callbacks import LearningRateScheduler
def scheduleLR(epoch,lr):
if epoch<15:
return lr
else:
return lr*tf.math.exp(-0.1)
model = Sequential()
model.add(Conv2D(64, (3, 3), activation='relu',input_shape=(128,128,1)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Conv2D(256, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(512, activation='relu'))
model.add(Dropout(0.4))
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.4))
model.add(Dense(15,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer='adam', metrics=['accuracy'])
callback = LearningRateScheduler(scheduleLR)
model.load_weights("./Best Model Weights/bestCNN128by128.h5")